Linux init进程详解(ZT)

Linux init进程详解(ZT)

ID:38364115

大小:36.50 KB

页数:8页

时间:2019-06-11

Linux init进程详解(ZT)_第1页
Linux init进程详解(ZT)_第2页
Linux init进程详解(ZT)_第3页
Linux init进程详解(ZT)_第4页
Linux init进程详解(ZT)_第5页
资源描述:

《Linux init进程详解(ZT)》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、Linuxinit进程详解(ZT)发布时间:2008-11-19   来源:来自网络   作者:匿名  浏览:265Linuxinit进程详解 一、什么是INIT:  init是Linux系统操作中不可缺少的程序之一。  所谓的init进程,它是一个由内核启动的用户级进程。  内核自行启动(已经被载入内存,开始运行,并已初始化所有的设备驱动程序和数据结构等)之后,就通过启动一个用户级程序init的方式,完成引导进程。所以,init始终是第一个进程(其进程编号始终为1)。  内核会在过去曾使用过init的几个地方查找它,它的正确位置(对Linux系统来说)是/sbin/init。如果内核找不到i

2、nit,它就会试着运行/bin/sh,如果运行失败,系统的启动也会失败。  二、运行级别  那么,到底什么是运行级呢?  简单的说,运行级就是操作系统当前正在运行的功能级别。这个级别从1到6,具有不同的功能。  不同的运行级定义如下:(可以参考RedHatLinux里面的/etc/inittab)  #0-停机(千万不能把initdefault设置为0)  #1-单用户模式  #2-多用户,没有NFS  #3-完全多用户模式(标准的运行级)  #4-没有用到  #5-X11(xwindow)  #6-重新启动(千万不要把initdefault设置为6)  这些级别在/etc/inittab文件

3、里指定。这个文件是init程序寻找的主要文件,最先运行的服务是放在/etc/rc.d目录下的文件。在大多数的Linux发行版本中,启动脚本都是位于/etc/rc.d/init.d中的。这些脚本被用ln命令连接到/etc/rc.d/rcn.d目录。(这里的n就是运行级0-6),每个不同级别的目录都链接了Init.d中的命令的一部分。三、运行级别的配置  运行级别的配置是在/etc/inittab行内进行的,如下所示:  12:2:wait:/etc/init.d/rc2  第一个字段是一个任意指定的标签;  第二个字段表示这一行适用于运行那个级别(这里是2);  第三个字段表示进入运行级别时,i

4、nit应该运行第四个字段内的命令一次,而且init应该等待该命令结束。/etc/init.d/rc命令运行启动和终止输入以便进入运行级别2时所需的任何命令。  第四个字段中的命令执行设置运行级别时的一切“杂活”。它启动已经没有运行的服务,终止不应该再在新运行级别内运行的服务。根据Linux版本的不同,采用的具体命令也不同,而且运行级别的配置也是有差别的。  init启动时,它会在/etc/inittab内查找一个代码行,这一行指定了默认的运行级别:  id:2:initdefault:  你可以要求init在启动时,进入非默认运行级别,这是通过为内核指定一个“single”或“emergenc

5、y”命令行参数来实现的。比如说,内核命令行参数的指定可通过LILO来执行。这样一来,你就可以选择单用户模式了(即运行级别1)。  系统正在运行时,telinit命令可更改运行级别。运行级别发生变化时,init就会从/etc/inittab运行相应的命令。  四、/etc/inittab中的特殊配置  /etc/inittab中,有几个特殊的特性,允许init重新激活特殊事件。这些特殊特性都是用第三个字段中的特殊关键字标记出来的。比如:  1.powerwait  允许init在电源被切断时,关闭系统。其前提是具有UPS和监视UPS并通知init电源已被切断的软件。  2.ctrlaltdel 

6、 允许init在用户于控制台键盘上按下CtrlAltDel组合键时,重新启动系统。注意,如果该系统放在一个公共场所,系统管理员可将CtrlAltDel组合键配置为别的行为,比如忽略等。3.sysinit  系统启动时准备运行的命令。比如说,这个命令将清除/tmp。  上面列出的特殊关键字尚不完整。其他的关键字及其使用详情,可参考你的inittab手册页。  五、在单用户模式下引导  一个重要的运行级别就是单用户模式(运行级别1),该模式中,只有一个系统管理员使用特定的机器,而且尽可能少地运行系统服务,其中包含登录。单用户模式对少数管理任务(比如在/usr分区上运行fsck)而言,是很有必要的,

7、因为这需要卸载分区,但这是不可能的,除非所有的服务系统已被杀死。  一个正在运行的系统可以进入单用户模式,具体做法是利用init,请求运行级别1。内核启动时,在内核命令行指定single或emergency关键字,就可进入运行级别1了。内核同时也为init指定命令行,init从关键字得知自己不应该采用默认的运行级别(内核命令行的输入方式和你启动系统的方式有关)。  有时,以单用户模式进行启动是必要

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。