未来往事

运行级别init详解 不指定

Rinald 本站原创 Linux 2011/06/07 23:20
Linux 启动时需要哪些步骤呢?
  本文将详细描述不同的运行级在启动中的作用。对于那些在DOS/Win9x/NT 平台下的高级用户而言,Linux 似乎是一个怪物。没有config.sys ,没有autoexec.bat,具有个人特色的机器配置不知道从何开始。需要说明的是,很多人认为Linux 是Unix 的一个克隆,但是,这种说法对于Linux 是不公平的。Linux比Unix更加开放,功能更强大。我们应该称之为GNU/Linux 。

  Linux 启动时,运行一个叫做init 的程序,然后由它来启动后面的任务,包括多用户环境,网络等。那么,到底什么是运行级呢?简单的说,运行级就是操作系统当前正在运行的功能级别。这个级别从1 到6 ,具有不同的功能。这些级别在/etc/inittab 文件里指定。这个文件是init 程序寻找的主要文件,最先运行的服务是那些放在/etc/rc.d 目录下的文件。大多数的Linux 发行版本中,启动脚本位于 /etc/rc.d/init.d。这些脚本被ln 命令来连接到 /etc/rc.d/rcn.d 目录(这里的n 就是运行级0-6)。例如:
/etc/rc.d/rc2.d 下面的S10network 就是连接到/etc/rc.d/init.d下的network 脚本的

因此,我们可以知道,rc2.d 下面的文件就是和运行级2 有关的。
文件开头的S 代表start 就是启动服务的意思,后面的数字10 就是启动的顺序。例如,在同一个目录下,你还可以看到 S80postfix 这个文件,80 就是顺序在 10 以后,因为没有启动网络的情况下,启动postfix是没有任何作用的。再看一下 /etc/rc.d/rc3.d,可以看到文件S60nfslock,但是这个文件不存在于 /etc/rc.d/rc2.d 目录下。NFS 要用到这个文件,一般用在多用户环境下,所以放在rc3.d 目录下。另外,在/etc/rc.d/rc2.d 还可以看到那些K 开头的文件,例如
/etc/rc.d/rc2.d/K45named ,K 代表 kill

标准的Linux运行级为3 或者5 ,如果是3 的话,系统就在多用户状态。如果是5的话,则是运行着X Window系统。如果目前正在3或5,而你把运行级降低到2的话,init 就会执行 K45named 脚本。

那么究竟linux的运行级别是什么呢?
  简单的说,运行级就是操作系统当前正在运行的功能级别。这个级别从0到6,具有不同的功能。这些级别在/etc/inittab文件里指定。这个文件是init程序寻找的主要文件,最先运行的服务是那些放在/etc/rc.d 目录下的文件。不同的运行级定义如下:(可以参考CentOS 里面的/etc/inittab)

# 缺省的运行级,linux用到的运行级别如下:
引用
# 0 - 停机(千万不要把initdefault设置为0 )
# 1 - 单用户模式
# 2 - 多用户,但是没有NFS
# 3 - 完全多用户模式
# 4 - 没有用到
# 5 - X11
# 6 - 重新启动(千万不要把initdefault设置为6 )


对各个运行级的详细解释:
引用
0 为停机,机器关闭。
1 为单用户模式,就像Win9x下的安全模式类似。
2 为多用户模式,但是没有NFS支持。
3 为完整的多用户模式,是标准的运行级。
4 一般不用,在一些特殊情况下可以用它来做一些事情。例如在笔记本电脑的电池用尽时,可以切换到这个模式来做一些设置。
5 就是X11,进到X Window系统了。
6 为重启,运行init 6机器就会重启


  不同的运行级有不同的用处,也应该根据自己的不同情形来设置。例如,如果我们丢失了root 口令,那么可以让机器启动进入单用户模式来设置。在启动后的 lilo 提示符下输入:
init=/bin/sh rw

就可以使机器进入运行级1 ,并把root文件系统挂为读写。他会跳过所有系统认证,让你使用passwd 程序来改变root口令,然后启动到一个新的运行级。

  当然lilo提示符下你也可以在boot:输入linux single进入单用户状态,但是单用户模式和传入init=/bin/sh 是不同的
单用户模式会做rc.sysinit的初始化,就是系统的最基本初始化,比如检查文件系统,开启swap,加载模块,等等
而传入init=/bin/sh 则不做任何初始化,只是给你个shell。
作者:Rinald @『未来往事 | 记录生活,存储回忆!
原文地址:http://fity.cn/post/30/
本站采用「署名 4.0 国际(CC BY 4.0)」创作共享协议。通俗地讲,只要在使用时署名,那么使用者可以对本站所有原创内容进行转载、节选、混编、二次创作,允许商业性使用。除非在文章正文内单独说明,本站欢迎各种形式的转载。互联网技术更新很快,本站很多文章都具有实效性,我会及时更新原文,但转载的文章无法通知更新。为了不给读者造成困惑或误导,请大家在转载时保留此出处信息。
↘期待↗
2011/06/08 18:48
不错    很详细。。。  呵呵    学习了grin
第1页 / 共1页 第一页 1 最后页
发表评论
  昵称 [注册]
  密码 (游客无需密码)
  网址
  电邮(电子邮件地址不会被公开, 仅用于接收评论回复提醒使用)
OpenID登入 权限选项 表情