Linux 运行级init详解

2016-01-29 19:15 4 1 收藏

Linux 运行级init详解,Linux 运行级init详解

【 tulaoshi.com - Linux 】

  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 脚本。

不同的运行级定义如下:(可以参考Red Hat Linux 里面的/etc/inittab)

# 缺省的运行级,RHS 用到的级别如下:
# 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口令,然后启动到一个新的运行级。

Linux 启动程序的调整,对于新手来说也是一个大问题,以后的教程中,我们将介绍这方面的知识。
 

来源:https://www.tulaoshi.com/n/20160129/1508879.html

延伸阅读
    1.开机启动时自动运行程序 Linux加载后, 它将初始化硬件和设备驱动, 然后运行第一个进程init。init根据配置文件继续引导过程,启动其它进程。通常情况下,修改放置在 /etc/rc或 /etc/rc.d 或 /etc/rc?.d 目录下的脚本文件,可以使init自动启动其它程序。例如:编辑 /etc/rc.d/rc.local 文件,在文件最末加上一行“x...
标签: 电脑入门
计算机系统中的文件千千万万,如果没有进行分类的话就会变得杂乱无章,使用起来也十分不方便,而文件系统就能很好的分类存放各类文件,下面图老师小编就给大家详细介绍下Linux文件系统,一起来学习下吧。 对于计算机来说,所谓的数据就是0和1的序列。这样的一个序列可以存储在内存中,但内存中的数据会随着关机而消失。为了将数据长久保存,我...
标签: 服务器
linux中less命令使用详解   less 工具也是对文件或其它输出进行分页显示的工具,应该说是linux正统查看文件内容的工具,功能极其强大。less 的用法比起 more 更加的有弹性。在 more 的时候,我们并没有办法向前面翻, 只能往后面看,但若使用了 less 时,就可以使用 [pageup] [pagedown] 等按键的功能来往前往后翻看文件,更容易用...
标签: 服务器
linux环境编程-ftok()函数详解   系统建立IPC通讯(如消息队列、共享内存时)必须指定一个ID值。通常情况下,该id值通过ftok函数得到。 ftok原型如下: key_t ftok( char * fname, int id ) fname就时你指定的文件名(该文件必须是存在而且可以访问的),id是子序号, 虽然为int,但是只有8个比特被使用(0-255)。 当...
  ①简介 DNS就是Domain Name System,它能够把形如www.21php.com这样的域名转换为211.152.50.35这样的IP地址;没有DNS,浏览21php.com这个网站时,就必须用211.152.50.35这么难记的数字来访问。提供DNS服务的就是DNS服务器。DNS服务器可以分为三种,高速缓存服务器(Cache-only server)、主服务器(Primary Name server)、辅助服务器...

经验教程

792

收藏

67
微博分享 QQ分享 QQ空间 手机页面 收藏网站 回到头部