如题,我没有对/etc/inittab进行任何操作,可是我的系统中找不到/etc/inittab文件。我的内核是vmlinuz-2.6.27-10-generic,为ubuntu10.
请各位帮帮忙,谢谢。
求助--为什么我的/etc/inittab文件不见了呢?
版面规则
我们都知道新人的确很菜,也喜欢抱怨,并且带有浓厚的Windows习惯,但既然在这里询问,我们就应该有责任帮助他们解决问题,而不是直接泼冷水、简单的否定或发表对解决问题没有任何帮助的帖子。乐于分享,以人为本,这正是Ubuntu的精神所在。
我们都知道新人的确很菜,也喜欢抱怨,并且带有浓厚的Windows习惯,但既然在这里询问,我们就应该有责任帮助他们解决问题,而不是直接泼冷水、简单的否定或发表对解决问题没有任何帮助的帖子。乐于分享,以人为本,这正是Ubuntu的精神所在。
-
- 帖子: 33
- 注册时间: 2008-11-17 14:13
-
- 帖子: 33
- 注册时间: 2008-11-17 14:13
Re: 求助--为什么我的/etc/inittab文件不见了呢?
哦,google了下,得到如下结果:
如果大家有什么别的想法,请继续发表,我会虚心接受。
分享一下。因为debian 系衍生出来的linux 一向是没有使用/etc/inittab 作为登入状态文档来使用的。但是
虽然没有系统默认没有这个文件,但是你可以自己建一个inittab文件。
因为从/etc/event.d/中的rc-default文件中代码可以看出:
script
runlevel --reboot || true
if grep -q -w -- "-s\|single\|S" /proc/cmdline; then
telinit S
elif [ -r /etc/inittab ]; then
RL="$(sed -n -e "/^id:[0-9]*:initdefault:/{s/^id://;s/:.*//;p}" /etc/inittab || true)"
if [ -n "$RL" ]; then
telinit $RL
else
telinit 2
fi
else
telinit 2
fi
end script
系统会首先搜寻inittab文件,如果不存在,那么将运行在2级别上。所以你可以自己建个inittab文件,或者把相应的telinit 2 改为 telinit X(你想要运行的级别)
转到kubuntu之前曾经学习了一下,了解到ubuntu在6.10开始用upstart替代init,主要脚本都在/etc/event.d下面,默认情况下/etc下没有inittab文件。
刚装上kubuntu时候专门到/etc/event.d下看了一下,特别注意到rc-default这个脚本,里面有一段内容:
elif [ -r /etc/inittab ] then
说明默认情况下inittab虽然不存在,但是用户建立的inittab还是会被注意到的。
然后又经别人的指点看了一下/usr/share/doc/upstart/下面的文档,其中README.Debian中有这么一段内容:
这就给我这样一个印象,即虽然ubuntu用upstart替代init,但还是和init保持兼容。
今天正好需要将系统直接启动到字符界面下,即不启动kdm。
edit the /etc/inittab file
那就试试自建一个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里面搜索到这样的内容:
0(halt the system)
1(single-user mode)
2through5(various muli-user modes),and
6(reboot the system)
小区别就在这里了,看来debian以及衍生出来的发行版,如ubuntu的default runlevel确实是2,而且id 2至5都是一样的。
真相大白,再次建立inittab,写入id:3:initdefault: ,然后进入/etc/rc3.d,将S13kdm移动到其他目录备份起来,重新启动系统,如愿以偿进入字符界面
如果大家有什么别的想法,请继续发表,我会虚心接受。
-
- 帖子: 33
- 注册时间: 2008-11-17 14:13
Re: 求助--为什么我的/etc/inittab文件不见了呢?
不过不知道为什么,我看的很多教程中都没有提到这个。
- anriqing
- 帖子: 189
- 注册时间: 2008-08-19 12:59
Re: 求助--为什么我的/etc/inittab文件不见了呢?
在这一点上,ubuntu和其他的Linux不太一样。Ubuntu的默认runlevel等级是2,并且3,4,5,和2相同。你可以在终端下输入runlevel来查看当前系统所在的runlevel,结果应该是N 2。而不是像一般的Linux,为runlevel5.
而且Ubuntu也取消了inittab这个文件。inittab这个文件中的内容散放在几个文件中,比如默认runlevel可以从/etc/event.d/rc-default这个文件中读取。
仔细看看下面这个链接,应该能解答你的疑惑。http://linux.chinaitlab.com/administer/770370.html
既然Ubuntu自己改变了启动方法,那么没有必要再去建立一个inittab文件。把现在的启动方法弄明白同时知道它和其他Linux版本之间的区别也就可以了。
而且Ubuntu也取消了inittab这个文件。inittab这个文件中的内容散放在几个文件中,比如默认runlevel可以从/etc/event.d/rc-default这个文件中读取。
仔细看看下面这个链接,应该能解答你的疑惑。http://linux.chinaitlab.com/administer/770370.html
既然Ubuntu自己改变了启动方法,那么没有必要再去建立一个inittab文件。把现在的启动方法弄明白同时知道它和其他Linux版本之间的区别也就可以了。
Windows Vista Ultimate SP1 CHS + Ubuntu 8.04.1 desktop i386
CPU:Intel Core 2 Duo T7250 RAM:2048MB DDR2-667
VGA:NVidia Geforce 8400M GS 128MB HD:SumSung 160G 5400R
LAN:Broadcom NetLink WIFI:Intel 3945ABG
WebCam:2.0M
CPU:Intel Core 2 Duo T7250 RAM:2048MB DDR2-667
VGA:NVidia Geforce 8400M GS 128MB HD:SumSung 160G 5400R
LAN:Broadcom NetLink WIFI:Intel 3945ABG
WebCam:2.0M
-
- 帖子: 33
- 注册时间: 2008-11-17 14:13
Re: 求助--为什么我的/etc/inittab文件不见了呢?
谢谢anriqing
- Jarson
- 帖子: 2371
- 注册时间: 2008-07-21 9:44
- 来自: 深圳
- 联系: