4.2.3. Upstart
红帽企业版 Linux 6 中,sysvinit 软件包的 init 已经被基于事件的 init 系统 Upstart 替代。这个系统在启动时处理任务和服务的开始,在关闭时停止它们并且在系统运行时监督它们。如果需要更多 Upstart 本身的信息,请参考
init(8)
手册页。
Upstart 识别为任务的进程是由
/etc/init
目录中的文件定义。Upstart 在手册页中有详细的记录。命令概述位于 init(8)
,任务语法请参考 init(5)
。
Upstart 在红帽企业版 Linux 6 中提供以下行为上的改变:
- 弃用
/etc/inittab
文件,现在它"只 "用于通过 initdefault 行设定默认运行级别。其他配置由/etc/init
目录中的 upstart 任务完成。 - 现在使用
/etc/sysconfig/init
中的 ACTIVE_CONSOLES 变量设定活跃 tty 控制台数,它可由/etc/init/start-ttys.conf
任务读取。默认值为 ACTIVE_CONSOLES=/dev/tty[1-6],它可在 tty1 到 tty6 中启动的 getty。 - 如果串行控制台是主要的系统控制台,一个串行 getty 还是会被自动配置。在先前的发行版本,这是通过
kudzu
完成的,它将会编辑/etc/inittab
。在红帽企业版 Linux 6,主要串行控制台配置是通过/etc/init/serial.conf
进行处理的。 - 现在要配置在非默认串口控制台中运行的 getty,您必须写入一个 Upstart 任务而不是编辑
/etc/inittab
。例如:如果需要 ttyS1 中的 getty,则应使用以下任务文件(/etc/init/serial-ttyS1.conf
):# This service maintains a getty on /dev/ttyS1. start on stopped rc RUNLEVEL=[2345] stop on starting runlevel [016] respawn exec /sbin/agetty /dev/ttyS1 115200 vt100-nav
像在先前的发行版本,如果您希望允许根用户登录到这个 getty,在
/etc/securetty
中需要 ttyS1。
因为使用 Upstart,所以不再支持使用
/etc/shutdown.allow
定义谁可关闭这台机器。