linux mint 13 没有/etc/inittab 文件

首先,ubuntu自从6.10版本之后就使用了较新的upstart机制来进行系统的初始化。之后都是没有systemv启动机制的inittab文件的,但是兼容,也就是说,你可以按照redhatopenSUSE那样touch一个inittab文件,然后修改即可以修改runlevel。系统会首先搜寻inittab文件,如果不存在,那么将运行在2级别上。所以你可以自己建个inittab文件,或者把相应的telinit2改为telinitX(你想要运行的级别)。mint是基于ubuntu的,所以,你懂的!

ubuntu6.10之后运行级别与一般linux运行级别稍有不同,如下:

编号名称/功能

0关闭系统

1让系统进入单用户(S,恢复)模式

S单用户(恢复)模式,文本登录界面,只运行很少几项系统服务

2多用户模式,图形登录界面,运行所有预定的系统服务

3、4、5多用户模式,图形登录界面,运行所有预定的系统服务(对于系统定制而言,运行级别2-5的作用等同)

6重启系统

用runlevel命令可以查看显示前一个运行级别以及当前运行级别。一般会显示N2,表示前一个运行级别未知,当前运行级别为2.

默认运行级别

默认情况下,Ubuntu系统引导进入多用户模式(运行级别2)。

telinit

具有root特权身份的用户可以使用实用工具telinit来关闭系统、重启系统,或者在恢复(单用户)模式与多用户模式之间切换。实用工具telinit属于一种迁移工具,用来兼容SysVinit系统。在运行Upstart的系统中,这个实用工具会根据自己的参数发送

某个运行级别事件。telinit命令的格式如下:

telinitrunlevel

恢复模式与root口令

当系统进入恢复(单用户)模式的时候,如果尚未将root账号解锁,那么在显示root提示符之前init会要求输入root口令。否则它会显示root提示符,而不要求输入口令。

当系统进入多用户模式的时候,它会显示图形登录界面。

警告:不要直接将运行级别修改为运行级别S。使用telinit要求系统切换为运行级别1,这会让系统首先进入运行级别1,此时适当的系统进程(运行系统服务)将被杀死,然后自动进入运行级别S。直接将运行级别修改为运行级别S,可以让系统进入运行级别S,而不会首先杀死任何进程。因此,通常最好不要这样做。

切换系统运行级别

方式1:终端输入init0/1···/6/S,s(系统运行级别号)

方式2:终端输入telinit0/1··/6/S,s(系统运行级别号)

与初始化运行级别有关的文件

1、/etc/init

rc.confrc-sysinit.confrcS.conf

2./etc/init.d

rcrc.localrcS

3./etc

rcN.d(N=0,1···6,S)

在/etc下有7个名为rcN.d的目录,对应系统的7个运行级别,rcN.d目录下都是一些符号链接文件,这些链接文件都指向init.d目录下的service脚本文件,命名规则为K+nn+服务名或S+nn+服务名,其中nn为两位数字。

对于以K(kill)开头的文件,系统将终止对应的服务

对于以S(start)开头的文件,系统将启动对应的服务

系统初始化过程

1.内核启动init

2.init找到/etc/init/rc-sysinit.conf文件,确定默认的runlevel,默认为2,可能被用户自定义的inittab文件的内容所修改(override)

3.运行/etc/init.d/rc

4.运行相应的/etc/rcN.d中的脚本

5./etc/rcN.d/中的脚本按设定的优先级依次启动,运行/etc/init.d/下的相应脚本

如想进一步了解,或详细了解:

在命令行模式输入:

man8init;

man5init;

即可查询系统给出的manual(手册)信息。

参考文章:

http://v2v12012.blog.51cto.com/5692118/968661

http://book.51cto.com/art/200905/126183.htm

相关推荐