LinuxSir.cn,穿越时空的Linuxsir!

 找回密码
 注册
搜索
热搜: shell linux mysql
查看: 1494|回复: 10

登录后自动进入Xwindow的怪方法

[复制链接]
发表于 2003-1-29 10:54:52 | 显示全部楼层 |阅读模式
我用的mandrake只在初次登录时才能进入图形界面,如果退出再登录,只能登录到控制台,为了解决这个问题。无意中想了个怪招,刚才试了一下,果然管用。就是在用户主目录下的.bash_profile中的最后 一行加上startx。然后执行bash --login。果然进入Xwindow。不过,采用这种方法有很多不方便的地方,如再切换到控制台下时会启动另一个Xwindow并失败。但由此可以看出,可以把一些每次登录都要执行的命令加入到.bash_profile中,给自己带来方便。
发表于 2003-1-29 12:14:09 | 显示全部楼层
谢谢kj兄
 楼主| 发表于 2003-1-29 19:36:06 | 显示全部楼层
其实还可以再改进一下,不要直接把startx加入到.bash_profile中,而是加入一个判断执行语句,询问是否启动X,如果回答是,则进入xwindow;如果不是,则直接进入字符界面。这样,可以避免在x下切换到控制台时要重复启动X的问题。
但最好的做法是把启动X的命令加入到/etc/rc.d/init.d中,再从/etc/rc.d/rc5.d中做一个链接过去,但我一直没有搞清楚这些脚本的执行过程。不好妄动。
发表于 2003-1-29 19:48:36 | 显示全部楼层
您是说在rc.sysinit里修改吗?
我看了看,很长的...呵~~~~;)
典型的shell脚本教材 要是能读懂了估计水平就查不多啦!
 楼主| 发表于 2003-1-29 20:37:53 | 显示全部楼层
启动过程是有一定的顺序要求的,init进程启动后,首先要执行的脚本文件就是rc.sysinit,这个脚本主要是进行一些系统设置方面的工作,如启动网络,设置系统时间,检查分区,加载模块,重新安装分区等等。然后再根据/etc/inittab的运行级别,进入相应的rc*.d下执行各个脚本文件。最后再执行rc.local。如果在rc.sysinit中加入启动X的命令,此时系统可能连基本的初始化都没有完成,怎么可能启动X呢?
LFS的inittab和rc.d下的脚本全是自己动手配置的,javalee兄,还是来搞搞LFS,我向你保证,做完之后,你对这些问题就清楚多了。呵呵,。。
发表于 2003-1-29 21:49:51 | 显示全部楼层
我知道!!!但是我还是想把shell先拿下再谈LFS,,,,
我觉得我的基础不太扎实,还是先把自己的基础打好,,,,做什么不能好高鹜远嘛~~~俗话说,万丈高楼平地起!!!!!我的平地,就是linux/shell,!!我看了点关于LFS的文章,似懂非懂的,;) 放心,,,我会赶上来的!!!
谢谢kj兄的指点!
发表于 2003-1-29 23:49:32 | 显示全部楼层
好,javalee,偶们一起努力
发表于 2003-1-29 23:58:02 | 显示全部楼层
OK!
发表于 2003-2-16 22:28:12 | 显示全部楼层
LFS是什么啊?
发表于 2003-2-19 04:18:41 | 显示全部楼层
最初由 kj501 发布
其实还可以再改进一下,不要直接把startx加入到.bash_profile中,而是加入一个判断执行语句,询问是否启动X,如果回答是,则进入xwindow;如果不是,则直接进入字符界面。这样,可以避免在x下切换到控制台时要重复启动X的问题。
但最好的做法是把启动X的命令加入到/etc/rc.d/init.d中,再从/etc/rc.d/rc5.d中做一个链接过去,但我一直没有搞清楚这些脚本的执行过程。不好妄动。


我记得登陆的shell是用这个profile,而非登陆的是rc。但是通常它们中间互相还调用。看看有没有X运行找一下有没有/tmp/.X0-lock这个文件就可以了。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

快速回复 返回顶部 返回列表