Linux init进程详解(ZT).docVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
Linux init进程详解(ZT) 发 布 时 间 : 2008-11-19??? 来 源 : 来自网络??? 作 者 : 匿名 ??浏 览 : 265 Linux init进程详解  一、什么是INIT:   init是Linux系统操作中不可缺少的程序之一。   所谓的init进程,它是一个由内核启动的用户级进程。   内核自行启动(已经被载入内存,开始运行,并已初始化所有的设备驱动程序和数据结构等)之后,就通过启动一个用户级程序init的方式,完成引导进程。所以,init始终是第一个进程(其进程编号始终为1)。   内核会在过去曾使用过init的几个地方查找它,它的正确位置(对Linux系统来说)是/sbin/init。如果内核找不到init,它就会试着运行/bin/sh,如果运行失败,系统的启动也会失败。   二、运行级别   那么,到底什么是运行级呢?   简单的说,运行级就是操作系统当前正在运行的功能级别。这个级别从1到6 ,具有不同的功能。   不同的运行级定义如下:(可以参考Red Hat Linux 里面的/etc/inittab)   # 0 - 停机(千万不能把initdefault 设置为0 )   # 1 - 单用户模式   # 2 - 多用户,没有 NFS   # 3 - 完全多用户模式(标准的运行级)   # 4 - 没有用到   # 5 - X11 (xwindow)   # 6 - 重新启动 (千万不要把initdefault 设置为6 )   这些级别在/etc/inittab 文件里指定。这个文件是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 / rc 2   第一个字段是一个任意指定的标签;   第二个字段表示这一行适用于运行那个级别(这里是2);   第三个字 段表示进入运行级别时,init应该运行第四个字段内的命令一次,而且init应该等待该命令结束。/etc/init.d/rc命令运行启动和终止输入以便进入运行级别2时所需的任何命令。   第四个字段中的命令执行设置运行级别时的一切“杂活”。它启动已经没有运行的服务,终止不应该再在新运行级别内运行的服务。根据Linux版本的不同,采用的具体命令也不同,而且运行级别的配置也是有差别的。   init启动时,它会在/etc/inittab内查找一个代码行,这一行指定了默认的运行级别:   id : 2 : initdefault :   你可以要求init在启动时,进入非默认运行级别,这是通过为内核指定一个“single”或“emergency” 命令行参数来实现的。比如说,内核命令行参数的指定可通过LILO来执行。这样一来,你就可以选择单用户模式了(即运行级别1)。   系统正在运行时,telinit命令可更改运行级别。运行级别发生变化时, init 就会从/etc/inittab运行相应的命令。   四、/etc/inittab中的特殊配置   /etc/inittab中,有几个特殊的特性,允许init重新激活特殊事件。这些特殊特性都是用第三个字段中的特殊关键字标记出来的。比如:   1. powerwait   允许init在电源被切断时,关闭系统。其前提是具有U P S和监视U P S并通知init电源已被切断的软件。   2. ctrlaltdel   允许init在用户于控制台键盘上按下C t r l A l t D e l组合键时,重新启动系统。注意,如果该系统放在一个公共场所,系统管理员可将C t r l A l t D e l组合键配置为别的行为,比如忽略等。 3. sysinit   系统启动时准备运行的命令。比如说,这个命令将清除/tmp。   上面列出的特殊关键字尚不完整。其他的关键字及其使用详情,可参考你的inittab手册页。   五、在单用户模式下引导   一个重要的运行级别就是单用户模式(运行级别1),该模式中,只有一个系统管理员使用特定的机器,而且尽可能少地运行系统服务,其中包含登录。单用户模式对少数管理任务(比如在/usr分区上运行fsck)而言,是很有必要的,因为这需要卸载分区,但这是

文档评论(0)

qwd513620855 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档