Linux下init进程与启动加载的服务

时间:2017-12-06 15:03来源:未知 作者:Linux先生 举报 点击:
今天我们来探讨Linux 最重要的一个进程——init 进程。通常的UNIX/Linux 的init会有7 个运行级别(Run Level),对于Debian来说,这7个运行级别的分配和其他

本文地址:http://www.kooct.com/news/2017/1206/16276.html
文章摘要:,引凤路见不平称量,同休共戚斩妖沽名吊誉。

  今天我们来探讨Linux  最重要的一个进程——init  进程。通常的UNIX/Linux  的init会有7 个运行级别(Run  Level),对于Debian来说,这7个运行级别的分配和其他常见的发行版有一点不同:运行级别 0 是关机、1  是单用户模式、6  是重新引导系统,其余的 2~5  都是多用户模式,没有本质的区别,可以根据管理员的喜好使用update-rc.d命令进行配置,后面会介绍这个命令。 

 



 

  
  系统在启动的时候,首先会进入单用户模式(S),这里启动一些必须启动的配置程序,如模块加载、硬件初始化等,而不启动一般的后台服务进程,如HTTP  服务器等。然后进入默认的或在内核引导参数中指定的运行级别。对于debian来说,默认的运行级别是2。 
  
  在默认运行级别的最后,init  会在虚拟终端启动getty,来接受用户的登录,安装了图形界面的情况下,会打开gdm之类的图形化登录程序。 
  
  inittab设置 
  
  正常情况下,/sbin/init  读取/etc/inittab配置文件来运行/etc/init.d/下面的脚本来完成启动过程,inittab中,每行是一个配置单元,#  之后的内容是注释,会被init忽略。每个有效行包含用冒号分开的4个字段,依次为下述4项。 
  
  id:标号,在整个 inittab中唯一地标识本条规则。 
  
  runlevels:运行级别,规则对应的运行级别,可以是多个。 
  
  action:指示init 如何调用规则规定的进程。下面还将进一步介绍。 
  
  Process:调用的进程。 
  
  字段是 initdefault,这就表明这条规则是用来指定默认的运行级别的,如果不指定这条规则,init 会在启动的时候询问运行级别的。 inittab中默认运行级别 
  
  4 # The default runlevel . 
  
  id :2: initdefault : 
  
  然后,sysinit  规则指定的命令会在系统启动的时候最先运行的内容。如果有 boot  或bootwait  的规则,会在 sysinit  规则后面运行。/etc/init.d/rcS  脚本会依次运行/etc/rcS.d/  目录下的脚本,实际上它们都是指向/etc/init.d/  目录下的脚本的符号链接。关
  
  于这些启动脚本。 
  
  inittab中指定初始化脚本 
  
  # Boot - time system configuration / initialization script . 
  
  8 # This is run first except when booting in emergency (-b) mode . 
  
  si :: sysinit :/ etc/ init .d/ rcS 
  
  接下来会运行的规则是 wait,默认的 inittab 配置文件里有两组运行 wait  的配置,正常启动、重启、关机时,指定0~6  的运行级别,分运行级配置。 
  
  inittab中指定正常启动脚本 
  
  # /etc/ init .d executes the S and K scripts upon change 
  
  15 # of runlevel . 
  
  # 
  
  17 # Runlevel 0 is halt . 
  
  # Runlevel 1 is single - user . 
  
  19 # Runlevels 2-5 are multi - user . 
  
  # Runlevel 6 is reboot . 
  
  21 l0:0: wait :/ etc/ init .d/rc 0 
  
  23 l1 :1: wait :/ etc/ init .d/rc 1 
  
  12 :2: wait :/ etc/ init .d/rc 2 
  
  25 l3 :3: wait :/ etc/ init .d/rc 3 
  
  l4 :4: wait :/ etc/ init .d/rc 4 
  
  27 l5 :5: wait :/ etc/ init .d/rc 5 
  
  l6 :6: wait :/ etc/ init .d/rc 6 
  
  而当系统维护状态的时候,也就是进入单用户模式的时候,则配置运行级别 S,如清
  
  单 7.18 所示。 

------分隔线----------------------------
栏目分类
推荐内容
重庆幸运农场v三全中广开最多的 双色球复式投注价格表 重庆幸运农场综合走势 双色球胆拖计算器 重庆农场开奖结果
重庆幸运农场代理 重庆幸运农场大小走势图彩票控 重庆幸运农场官方网站 深海水族馆海胆农场 酷彩娱乐平台注册登陆
幸运农场开奖结果50期 福利彩票幸运农场技巧 重庆幸运农场走势图一 重庆时彩最新开奖记录 幸运农场3拖5中3个
幸运农场计划 小幸运下载不了 幸运农场8个全中好多钱 时时彩走势图 网上买幸运农场
赛车pk10开奖官网 北京赛车系统 喜乐彩中几个号 pc加拿大幸运28预测吧 百度天津快乐十分
六合彩免费资料大全 内蒙古时时彩最新开奖 双色球开奖结果 福建福彩快三 贵州11选5走势图势图
江西时时彩万能4码走势图 天津时时彩缩水 百家 乐技巧 福建十一选五遗漏数据一定牛 双色球分析中彩网
天津快乐十分玩法介绍 陕西快乐十分必赢技巧 彩经网天津时时彩 重庆时时彩官方开奖 弯道急速赛车小游戏