Man:Man5/inittab.5

Матеріал з docs.linux.org.ua — збірника документації з Unix/Linux українською мовою.

Перейти до: навігація, пошук

Зміст

НАЗВА

inittab - формат файлу inittab, використовуваного сумісним з sysv процесом init

ОПИС

Файл inittab описує, які процеси запускаються під час старту системи і під звичайної роботи комп'ютера (тобто, які скрипти виконуються з /etc/init.d/boot, /etc/init.d/rc, параметри getty і.т.д.). initd(8) розпізнає багатократні робочі рівні, кожен з яких включає набір процесів, що започатковуються. Дійсними робочими рівнями є 0-6 і A, B і C для записів ondemand (англ. за вимогою). Записи в inittab мають наступну форму:

id:runlevels:action:process

Рядки, що починаються з "#" вважаються коментарем і не беруться до уваги.

id
Ідентифікаційний номер. Унікальна послідовність з 1-4 чисел для ідентифікації запису в inittab (для sysvinit, компільованої з бібліотеками до 5.2.18 або a.out - лише 2 знаки).

Примітка: для getty або інших процесів реєстрації користувачів, поле id повинно дорівнювати суфіксу відповідного tty, на якому відбудеться реєстрація, наприклад, 1 для tty1. У протилежному випадку, реєстрація користувачів може не працювати як слід.
runlevels
Робочі рівні. Перелік робочих рівнів, у яких відповідна дія матиме місце.
action
Дія. Поле, що вказує на дію, яка відбудеться.
process
Процес. Вказує на процес, який необхідно запустити. Якщо це поле починається зі знаку '+', init не робитиме журнальні записи у utmp і wtmp для цього процесу. Це може згодитись для програм getty, які наполягають на самостійному ведені журнальних записів до utmp/wtmp. (Це також вважається історичним недоліком.)

Поле робочих рівнів, runlevels, може містити знаки для декількох рівнів. Так, 123 означає, що процес повинен бути запущено у робочих рівнях 1, 2 і 3. Записи ondemand можуть містити позначення робочих рівнів A, B і C. Поле runlevels для пунктів sysinit, boot і bootwait буде ігноровано.

Під час зміни робочого рівня, всі процеси, що не вказано у новому робочому рівні буде вбито, спочатку за допомогою SIGTERM, затім SIGKILL.

Чинними діями для поля action є:

respawn
Процес буде перезаладовано якщо він обірветься (наприклад getty).
wait
Процес запуститься один раз при входженні до відповідного робочого рівня і init зачекає на закінчення цього процесу.
once
Процес буде виконано один раз при входженні до вказаних робочих рівнів.
boot
Процес буде виконано під час завантаження системи. Поле робочих рівнів runlevel ігноровано.
bootwait
Процес буде виконано під час завантаження системи, init очікуючи на його завершення (наприклад /etc/rc). Поле робочих рівнів runlevel ігноровано.
off
Не здійснює жодної дії.
ondemand
Процес, позначений як ondemand буде виконано тільки коли викликати вказаний робочий рівень "за вимогою". Однак, сам перехід до робочого рівня "за вимогою" не відбудеться. (Нагадуємо, робочими рівнями для ondemand можуть бути лише `a', `b' і `c'.)
initdefault
Запис initdefault вказує на робочий рівень на якому зупинитись під час завантаження системи. Якщо жоден не вказано, init запитає користувача на системній консолі. Поле process ігнорується.
sysinit
Процес буде виконано під час завантаження системи. Його виконання відбудеться до будь-яких процесів навпроти boot або bootwait записів. Поле runlevels ігнорується.
powerwait
Процес буде виконано у випадку втрати живлення.Init, як правило, буде поінформовано про це через один з процесів комунікації з резервною батареєю UPS, підключеною до комп'ютера. Init зачекає на завершення процесу з powerwait запису, перед тим як продовжувати будь-які інші дії.
powerfail
Схоже до powerwait, за виключенням того, що init не очікує завершення процесу.
powerokwait
Процес буде виконано, як тільки init поінформовано про відновлення живлення.
powerfailnow
Процес буде виконано коли init буде поінформовано про виснаження резервної батареї UPS (лише у випадку, що спостерігаючий процес в змозі виявити такий стан).
ctrlaltdel
Процес буде виконано при отриманні init сигналу SIGINT. Це означає, що хтось на системній консолі притиснув клавішну комбінацію CTRL-ALT-DEL. Типово, вона використовується, якщо хтось хоче виконати shutdown, тобто зупинити систему, увійти у однокористувацький режим або перезавантажити систему.
kbrequest
Процес буде виконано у випадку отримання init сигналу від оброблювача сигналів клавіатури про те, що певна спеціальна комбінація клавіш була введена на консолі.

Документацію цієї функції не є завершеною. Додаткову документацію слід шукати у пакеті kbd-x.xx (найостаннішим був kbd-0.94, під час складання цього документу). Загалом, вам необхідно закріпити певну комбінацію клавіш до дії

"KeyboardSignal". Наприклад, щоб вказати комбінацію Alt-Uparrow як спеціальну, добавте наступне у файл keymaps:

             alt keycode 103 = KeyboardSignal

ПРИКЛАДИ

Наступне є прикладом inittab, схожого з тими, що використовувались на ранніх системах Linux:

             # inittab for linux
             id:1:initdefault:
             rc::bootwait:/etc/rc
             1:1:respawn:/etc/getty 9600 tty1
             2:1:respawn:/etc/getty 9600 tty2
             3:1:respawn:/etc/getty 9600 tty3
             4:1:respawn:/etc/getty 9600 tty4

У цьому прикладі виконується (скрипт) /etc/rc під час завантаження і запускається getty на терміналах tty1 до tty4.

Наступне є складнішим прикладом inittab, з різноманітними робочими рівнями (дивіться коментарі всередині):

             # На якому робочому рівні зупинитися.
             id:2:initdefault:
             # Системна ініціалізація, перед усім іншим.
             si::sysinit:/etc/rc.d/bcheckrc
             # Рівень 0,6 для зупинки і рестарту,
             # 1 - для однокористувацького режиму.
             l0:0:wait:/etc/rc.d/rc.halt
             l1:1:wait:/etc/rc.d/rc.single
             l2:2345:wait:/etc/rc.d/rc.multi
             l6:6:wait:/etc/rc.d/rc.reboot
             # Що робити у випадку "3-пальцевого салюту".
             ca::ctrlaltdel:/sbin/shutdown -t5 -rf now
             # Рівні 2 і 3: getty на консолі; 3 - getty на порту
             # модема.
             1:23:respawn:/sbin/getty tty1 VC linux
             2:23:respawn:/sbin/getty tty2 VC linux
             3:23:respawn:/sbin/getty tty3 VC linux
             4:23:respawn:/sbin/getty tty4 VC linux
             S2:3:respawn:/sbin/uugetty ttyS2 M19200

ФАЙЛИ

/etc/inittab

АВТОР

Init була написана Miquel van Smoorenburg (miquels@cistron.nl). Цей посібник складено Sebastian Lederer (lederer@francium.informatik.unibonn.de) і змінено Michael Haardt (u31b3hs@pool.informatik.rwth-aachen.de).

ДИВІТЬСЯ ТАКОЖ

init(8), telinit(8)


Переклав Віталій Цибуляк <vi@uatech.atspace.com>

Особисті інструменти