/etc/inittab 每行遵循固定格式:id:runlevels:action:process,部分欄位可為空。以下逐欄詳細說明。
配置行的唯一識別碼,檔案內不可重複。傳統上對應終端機裝置名稱 (如 1 對應 tty1),但非強制要求。
指定該行生效的執行等級,可填多個數字 (如 12345、35)。Linux 標準七大執行等級:
| Action | 描述 |
|---|---|
respawn | 啟動並監控 process,終止則自動重啟 (適用於 getty、xdm) |
wait | 執行 process 並等待結束 (適用於 rc 腳本) |
once | 執行 process 一次,不等待也不重啟 |
boot | 無論何種執行等級,開機時皆執行 process |
bootwait | 開機時執行 process 並等待結束 |
off | 忽略此行,相當於停用 |
ondemand | 進入 ondemand 等級時執行 |
initdefault | 設定預設執行等級,此行無需 process |
sysinit | 開機最早執行,優先於 boot/bootwait (系統初始化) |
powerwait | 電源故障時執行並等待結束 |
powerokwait | 電源恢復時執行並等待結束 |
powerfailnow | 電源嚴重不足時緊急執行 |
ctrlaltdel | 按下 Ctrl+Alt+Del 觸發的動作 (通常為關機/重啟) |
kbrequest | 特殊鍵盤組合鍵觸發 (需在 keymaps 定義) |
要執行的 Shell 指令,支援任何合法 Shell 語法 (含參數、重導向、管線等)。例如:/sbin/mingetty tty1、/etc/rc.d/rc 3、/sbin/shutdown -t3 -r now。
initdefault 只能出現一次,通常放在檔案開頭。sysinit 應僅有一行,負責最核心的系統初始化 (掛載 /proc、啟動 udev 等)。respawn 用於需持續運行的服務 (getty、顯示管理器),避免意外退出導致無法登入。init q 或 telinit q 即可重讀配置。