Chinaunix首页 | 论坛 | 博客
  • 博客访问: 114777
  • 博文数量: 32
  • 博客积分: 1280
  • 博客等级: 中尉
  • 技术积分: 265
  • 用 户 组: 普通用户
  • 注册时间: 2008-08-05 10:50
文章分类
文章存档

2011年(1)

2008年(31)

我的朋友

分类: LINUX

2008-10-31 18:39:21

本文是指自动登录X

方法一

编辑/etc/inittab,确保启动级别为5,即:

id:5:initdefault:

并且在最后面添加一行:

x:5:once:/bin/su username -l -c "/bin/bash --login -c startx >/dev/null 2>/dev/null"

(注:要把原来类似的那行注释掉,username替换为要自动登录的用户名)

另外要取消GDM之类的登录管理器自动运行,最后重启即可。

方法二

源代码:

int main() {                                                                               
        execlp( "login", "login", "-f", "your_user_here", 0);                                     
}

保存为autologin.c,其中your_user_here替换为要自动登录的用户名,然后编译并安装之:

$ gcc autologin.c -oautologin
$ sudo cp autologin /usr/sbin/autologin

配置 /etc/inittab

确保启动级别为3

然后修改

c1:2345:respawn:/sbin/agetty -8 38400 vc/1 linux

c1:2345:respawn:/sbin/agetty -n -l /usr/sbin/autologin 38400 vc/1 linux

配置 ~/.bash_profile

添加:

if [ -z "$DISPLAY" ] && [ $(tty) == /dev/vc/1 ]; then
    startx
fi

最后重启即可。

无论哪种方法,注销后都会回到文本界面,运行startx即可启动X并自动登录,请在~/.xinitrc里指定使用的桌面管理器。

附我的~/.xinitrc:

#!/bin/sh

#
# ~/.xinitrc
#
# Executed by startx (run your window manager from here)
#

source ~/.xprofile

DEFAULTSESSION=startlxde
case "$1" in
        "LXDE")
                exec startlxde
            ;;
        "GNOME")
                exec gnome-session
                ;;
        "KDE")
                exec startkde
                ;;
        "XFCE4")
                exec startxfce4
                ;;
        "ICEWM")
                exec icewm-session
                ;;
        "FLUXBOX")
                exec startfluxbox
                ;;
        *)
                exec $DEFAULTSESSION
                ;;
esac

方法二参考:

阅读(2085) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~