启动后自动进入X (简体中文)
From ArchWiki
i18n |
---|
English |
简体中文 |
Русский |
Português do Brasil |
ไทย |
如何在Arch引导的时候启动X
编辑文件/etc/inittab
第一行未被注销的行应该和下面差不多:
id:3:initdefault:
把他修改成
id:5:initdefault:
同时如果你需要的话,可以修改一下文件/etc/inittab
的最后一行,以在X启动的时候 自动启动KDM、GDM或者SliM以取代XDM.
还有一种方法,你可以添加显示(登录)管理器 (KDM
, GDM
, XDM
, 或者 SliM
) 到/etc/rc.conf
中的系统守护进程列表中。
将下面的两段内容根据你的实际情况选择其一添加到~/.bash_profile
中 (如果文件~/.bash_profile不存在就手动创建):
手动用startx启动的:
if [[ -z "$DISPLAY" ]] && [[ $(tty) = /dev/tty1 ]]; then startx logout fi
或用X11启动进程加载的:
if [[ -z "$DISPLAY" ]] && [[ $(tty) = /dev/tty1 ]]; then xinit logout fi
这样,当你在第一个控制台首次登录的时候,X就会自动的启动了。This way X is automatically started when you log in at the first console. 另外,如果你用命令ctrl+alt+backspace杀死了X进程,那么当前用户也会被自动注销。 你下一次登录的时候,X会再次自动的启动。并且如果你按照Automatically_login_some_user_to_a_virtual_console_on_startup中的 mingetty 部分的介绍, you will be able to have X automatically respawn with a fresh environment ,并且所有的东西都会搞定.
使用预设用户跳过登录直接运行X
有一种绕过显示(登录)管理器并且直接引导到指定的窗口管理器或者桌面环境的方法,如下:
在文件 /etc/inittab
中,修改:
id:3:initdefault: [...] x:5:respawn:/usr/X11R6/bin/xdm -nodaemon
为
id:5:initdefault: [...] x:5:once:/bin/su PREFERED_USER -l -c "/bin/bash --login -c /usr/bin/startx >/dev/null 2>&1"
注意将PREFERED_USER替换为你所要自动登录的用户名.
你可以用你别的任何的程序,甚至是你自己编辑的可执行脚本来取代startx
。比如我自己,我是用 startx -- -nolisten tcp -br -deferglyphs 16
来取代startx
的。
你也可以通过编辑文件~/.xinitrc
来修改默认的窗口管理器.
作为可选项,你可以将startxfce4
(或者 xinit
, 将其复制到/.xinitrc
,再比如 icewm
, 将~/.icewm
复制为/.icewm
) 放到文件/etc/rc.local
中,需要注意的是这样的话不管 X 还是 xfce (或者你喜欢的别的WM/DE) 都会作为超级用户而自动启动, 当然我们一般不推荐这样做。当然,你也可以用同样的方法在桌面载入时执行/bin/su
.