电脑技术学习

对话 UNIX: 启动

dn001

  Action: action 字段通知 init 进程如何处理 inittab 文件的各个条目中的进程。以下是 AIX 所使用的 action 字段的值:

  respawn:如果进程不存在,则启动进程。不等待其终止,并继续扫描 inittab 文件。如果进程终止,则重新启动进程。

  wait:启动进程,并等待其终止。

  once:启动进程,但不等待其终止。如果进程终止,则不重新启动它。

  boot:只在系统启动时处理条目。

  bootwait:在服务器最初从单用户进入多用户模式时处理条目。

  powerfail:只在 init 收到电源故障信号时执行命令。

  powerwait:只在 init 收到电源故障信号时执行命令,并且等待进程终止后再继续扫描 inittab 文件。

  off:如果目前进程正在运行,则发送信号 SIGTERM,并在 20 秒后发送 SIGKILL。

  ondemand:该值与 respawn 相同,但只适用于运行级别 a、b 和 c。

  initdefault:仅在 init 最初执行时扫描条目。

  sysinit:在登录和 init 访问控制台之前执行条目。

  Command:/etc/inittab 中最后输入的字段是 command 字段。这是在 <run level> 已启动时,<action> 在认为有必要的情况下执行的实际命令。当命令准备执行时,AIX 将以如下方式启动子进程:sh -c exec <command>。

  以下示例演示在启动运行级别 2 时运行名为 /usr/bin/rc.atc_bin 的 Shell 脚本,并在每次调用运行级别 2 时 respawn 该进程:

CORMANY_BIN:2:respawn:/usr/bin/rc.atc_bin

  若要为运行级别 0、1、3、6 和 9 禁用相同的脚本,请使用:

CORMANY_BIN:245780:respawn:/usr/bin/rc.atc_bin

  查看和修改 inittab

  AIX 提供了比手动更改 /etc/inittab 文件更方便的命令。这些命令遵从与其他 AIX 命令相同的命名约定:

  mkitab:向 inittab 文件添加记录。

  以下示例将具有运行级别 2 的 /usr/bin/rc.atc_bin 脚本添加到 inittab 中。

mkitab “CORMANY_BIN:2:respawn:/usr/bin/rc.atc_bin

  chitab:更改 inittab 文件中的记录。语法与 inittab 文件中的实际记录相同。

  以下示例将上一示例的 inittab 文件中的 /usr/bin/rc.atc_bin 脚本的运行级别更改为 3:

chitab "CORMANY_BIN:3:respawn:/usr/bin/rc.atc_bin"

  lsitab:列出 inittab 文件中的记录。使用 lsitab 是单独或一起查看 inittab 记录的安全手段。

  以下示例查看 inittab 文件中的所有记录:

lsitab -a

  以下示例仅查看标识为 CORMANY_BIN 的记录:

lsitab CORMANY_BIN

  rmitab:从 inittab 文件中删除记录。

  以下示例将标识为 CORMANY_BIN 的记录从 inittab 文件中删除:

rmitab CORMANY_BIN

  结束语

  现在已读取 inittab 文件并执行了所有应该执行的进程,系统已准备好进行登录!您现在可以登录并畅游您的 AIX 系统。

  当您按下服务器上的电源开关时,系统魔术般地启动了,这一切似乎很简单,但正如您从本文中看到的,AIX 系统启动时发生了很多事情。希望您通过阅读本文能够更清楚地了解 AIX 需要执行哪些过程来支持稳定的操作系统。

标签: