F.4. SysV Init 运行级别
SysV init 运行级别系统提供一个标准进程来控制在初始化运行级别时
init
启动或者停止哪个程序。选择 SysV init 的原因是易于使用且比传统的 BSD 风格的 init 程序更加灵活。
SysV init 的配置文件位于
/etc/rc.d/
目录。在这个目录中有 rc
、rc.local
、rc.sysinit
和可选的 rc.serial
脚本,以及下面的目录:
init.d/ rc0.d/ rc1.d/ rc2.d/ rc3.d/ rc4.d/ rc5.d/ rc6.d/
init.d/
目录包含控制服务时 /sbin/init
命令使用的脚本。每个以编号的目录代表 Red Hat Enterprise Linux 中六个默认配置的运行级别。
F.4.1. 运行级别
SysV init 运行级别的目的是在不同的系统中使用不同的。例如: X Window 系统使用一定的系统资源,没有它的话,服务器的执行效率会更高。或者,有时候系统管理员需要在一个更低的运行级别下来执行某些诊断任务,如在运行级别 1 中修复磁盘。
给定运行级别的特征决定了
init
停止启动哪些服务。例如,运行级别 1(单用户模式)停止所有的网络服务,而运行级别 3 则会启动这些服务。通过在某个运行级别下设置启动和停止的服务,init
可以在不需要用户手工停止和启动服务的情况下迅速更改机器模式。
下面的运行级别是 Red Hat Enterprise Linux 中默认定义的:
0
— 停止1
— 单用户文本模式2
— 未使用(用户可自定)3
— 完全的多用户文本模式4
— 未使用(用户可自定)5
— 完全的多用户图形模式(基于 X Window 的登录页面)6
— 重启
通常,用户在运行级别 3 和 5 中操作 — 这两个都是多用户模式。运行级别 2 和 4 没有被使用,用户有时可自定义它们来满足某些特定需要。
系统的默认运行级别在
/etc/inittab
中列车。要找到系统的默认运行级别,可以在 /etc/inittab
靠最后的地方找如下的一行:
id:5:initdefault:
如第一个分号后所指出的,这个示例里的默认运行级别是 5。要更改它,可以 root 用户身份编辑
/etc/inittab
。
警告
编辑
/etc/inittab
要非常小心。简单的输入错误就可以导致系统无法引导。如果发生了这样的事情,可以使用引导光盘,进入单用户模式,或者进入救援模式来引导系统并修复这个文件。
有关单用户和救援模式详情请参考 第 36 章 基本系统恢复。
通过修改引导装载程序传给内核的参数,也可以在引导时更改默认的运行级别。有关在引导时更改运行级别的详情请参考 第 E.9 节 “在引导时改变运行级别”。