而且当进入系统后,却没有桌面,panel倒是有的。这时如果你查看进程,(可以用终端命令ps,或者图形工具gnome-system-monitor等等),会发现nautilus进程占用了很高的进程,这说明nautilus桌面管理程序它是启动了,可是异常了。我相信这是7.04,7.10版本的一个bug,我尝试过登出再登录许多次,nautilus时灵时不灵,而且灵的时候少,不灵的时候多。 你可以kill它,然后重新start它(直接用命令nautilus就可以了,它会自动Initialize gnome-mount extension挂载你windows的盘如果你有的话),这时美丽的桌面又回来了。
但是,这还是没有解决根本的问题。难道每次都要这样等待吗?我尝试过而且花了很多时间在网上google,baidu过,可是没有找到过可行的办法,因此我决定自己来看看能不能解决,这样就要对gdm管理,gnome-session相关使用到的文件有个必要的了解,查看/etc/gdm下的文件发现gdm.conf和gdm.conf-custom(在它们的头部有段英文有说明)的关系,你用系统/系统管理/登录窗口(也就是gdmsetup)对里面的修改都将反应到gdm.conf-custom中。还有Xsession真正管理会话的脚本,感兴趣的不妨看看它,
里面有一段:
代码: 全选
# use run-parts to source every file in the session directory; we source
# instead of executing so that the variables and functions defined above
# are available to the scripts, and so that they can pass variables to each
# other
SESSIONFILES=$(run_parts $SYSSESSIONDIR)
if [ -n "$SESSIONFILES" ]; then
for SESSIONFILE in $SESSIONFILES; do
. $SESSIONFILE //看这里,其实它这是在循环执行$SYSSESSIONDIR也就是/etc/X11/Xsession.d中的脚本
done
fi
刚开始我没有删除它只是将/etc/X11/Xsession.d中它新增加的一个文件98xserver-xgl_start-server删除(最好备份),你看看它就会发现真正执行的是/usr/share/xserver-xgl/Xgl-session,你再看看/usr/share/xserver-xgl下的另一个文件,你会发现其实它的自动让xgl运行也不是多么神奇!别害怕它。我也是刚使用ubuntu不久,对脚本也不熟,对C++倒是还好(专业课)。即使都不懂,你看看那些文件的头部说明也能有个大概的了解的。
废话了些,继续正题,上面这一段是我对xserver-xgl的兴趣,没兴趣的大可以直接sudo apt-get remove xserver-xgl。恩,省事!不过,请注意这是对装nv官方驱动的来说的,其他的情况请谨慎!
还挺难说清楚的,待续吧。