2007年12月11日
让ubuntu从字符界面(命令行)登录 - [Ubuntu]
版权声明:转载时请以超链接形式标明文章原始出处和作者信息及本声明
http://lostu.blogbus.com/logs/11899125.html
方法一:
转到kubuntu之前曾经学习了一下,了解到ubuntu在6.10开始用upstart替代init,主要脚本都在/etc/event.d下面,默认情况下/etc下没有inittab文件。
刚装上kubuntu时候专门到/etc/event.d下看了一下,特别注意到rc-default这个脚本,里面有一段内容:
blogbus.com/files/11973824800.jpg" border="0" alt="" />

说明默认情况下inittab虽然不存在,但是用户建立的inittab还是会被注意到的。
然后又经别人的指点看了一下/usr/share/doc/upstart/下面的文档,其中README.Debian中有这么一段内容:

这就给我这样一个印象,即虽然ubuntu用upstart替代init,但还是和init保持兼容。
今天正好需要将系统直接启动到字符界面下,即不启动kdm。
那就试试自建一个inittab文件,并按照以前的习惯写入一行id:3:initdefault:
,保存后重新启动,结果发现毫无变化,依然启动到桌面,有点纳闷,难道inittab不起作用?在终端里输入runlevel检查当前状态,显示 N
3,说明inittab有效果,那是什么原因呢?
将刚才建立的inittab移除,将系统恢复到之前的状态并重新启动,再用runlevel检查,显示 N 2,说明ubuntu系统的default runlevel可能是2,这和我以前的常识有些冲突,看来又需要学习了。
先去分别查看/etc/rc2.d至rc5.d下的内容,发现基本一致,都启动了kdm。这与其他的linux发行版不太一致,通常runlevel 3是Multi user mode,即直接登录到字符界面;而runlevel 5是Multi user mode with GUI,即登录到图形界面。
后来在Debian的FAQ里面搜索到这样的内容:

小区别就在这里了,看来debian以及衍生出来的发行版,如ubuntu的default runlevel确实是2,而且id 2至5都是一样的。
真相大白,再次建立inittab,写入id:3:initdefault: ,然后进入/etc/rc3.d,将S13kdm移动到其他目录备份起来,重新启动系统,如愿以偿进入字符界面。
转自: http://www.cnweblog.com/skean/articles/265322.html
方法二:
首先安装sysv-rc-conf。
即 sudo apt-get install sysv-rc-conf
运行sysv-rc-conf
即 sudo sysv-rc-conf
运行后在选项中寻找到2列 对于的gdm项,去掉选择gdm即可。
注意!当你重新启动ubuntu之后进入了字符界面之后,又想回到图形环境不是用startx命令,而是telinit 3。
随机文章:
收藏到:Del.icio.us
《让ubuntu从字符界面(命令行)登录》的继续讨论
Blog:Missing……2008-07-30 15:20:17






评论
<div class="quote"><p>此篇文章为《让ubuntu从字符界面(命令行)登录》的继续讨论,原文章地址为:http://lostu.blogbus.com/logs/11899125.html</p>
<p>原文摘要:</p></div><div class="quote">
转到kubuntu之前曾经学习了一下,了解到ubuntu在6.10开始用upstart替代init,主要脚本都在/etc/event.d下面,默认情况下/etc下没有inittab文件。<br />
<br />
刚装上kubuntu时候专门到/etc/event.d下看了一下,特别注意到rc-default这个脚本,里面有一段内容:<br /><br /><br />说明默认情况下inittab虽然不存在,但是用户建立的inittab还是会被注意到的。<br /><br />
然后又经别人的...</div><div class="quote"> </div><div class="quote"> </div><div class="quote"><h4> <span class="mw-headline"> “我不想直接启动到 X!” </span></h4>
<p>玩 edgy/dapper 很有趣,但在启动进程中执行不稳定的 xdm、gdm、kdm 和 wdm 会让你焦头烂额。
</p><p>首先,在启动提示符后输入如下指令获得 root shell:
</p>
<pre>boot: Linux vga=normal s<br /></pre>
<p>这里的 Linux 是你要启动的内核的标记,“vga=normal”告诉 lilo 在普通 VGA 屏幕下运行,“s”(或“S”)是传给 init 的参数,告诉它进入单用户模式。在提示符后输入 root 密码。
</p><p>有多种方法禁用 X 启动 daemons:
</p>
<ul><li> 运行 update-rc.d -f ?dm remove ; update-rc.d ?dm stop 99 1 2 3 4 5 6 .
</li></ul>
<ul><li> 在所有 /etc/init.d/?dm 文件的最前面加上“exit 0”。
</li></ul>
<ul><li> 把所有的 /etc/rc2.d/S99?dm 文件改名为 /etc/rc2.d/K99?dm。
</li></ul>
<ul><li> 删除所有的 /etc/rc2.d/S99?dm 文件。
</li></ul>
<ul><li> 运行 :>/etc/X11/default-display-manager
</li></ul>
<p>其中,rc2.d 中的数字必须与 /etc/inittab 中指定的 runlevel 一致。而 ?dm 的意思是你要将同一个命令运行多次,每次将其替换成 xdm、gdm、kdm 和 wdm 中的一个。
</p><p>在 Ubuntu 下只有第一种方法是“唯一正确的方法”。最后一种方法比较简单但只适用于 Ubuntu,而且还需要使用 dpkg-reconfigure 重新设置一次。其它方法都是通用的中 daemons 的方法。
</p><p>你仍可在任何控制台 shell 中用 startx 命令启动 X。
</p> </div>
首先安装sysv-rc-conf。
即 sudo apt-get install sysv-rc-conf
运行sysv-rc-conf
即 sudo sysv-rc-conf
运行后在选项中寻找到2 对于的gdm项,去掉选择gdm即可。
要注意的是,当你重新启动ubuntu之后进入了字符界面之后,又想回到图形环境不是用startx命令,而是telinit 3。