словник | перекладачка | факти | тексти | програми
щодо | посилання | новини | гостьова книга | пошук
початок << тексти  << автор  << зміст  << сторінка

next up previous contents index
Далі: Рівні роботи Вгору: init Назад: init приходить першим

    
Настройка init для старту getty: файл /etc/inittab

На початку роботи init  читає конфіґураційний файл /etc/inittab . Під час роботи системи він не буде більше звертатися до цього файлу і перечитає його, тільки якщо йому послано сигнал HUP140. Дякуючи цьому не потрібно перегружати систему, після змін в /etc/inittab .

Синтаксис файлу /etc/inittab  трохи заплутаний, тому ми почнем з простого випадку конфіґурації ліній getty . Рядки в файлі /etc/inittab  складаються з чотирьох полів розділених двокрапками:

id:робочі рівні:дія:процес
Поля описані трохи далі. Додатково /etc/inittab  може мати пусті рядки та рядки, які починаються символом номера141 - (`verb|#|'). Обидва типи таких рядків ігноруються.

id

Це поле визначає назву рядка. Для рядків конфіґурації getty  воно вказує термінал, де працює даний getty  (літери, що йдуть після /dev/tty  в назві спеціального файлу пристрою). В інших випадках це поле не має ніякого значення (крім хіба що обмежень по довжині). Але всі рядки в /etc/inittab  повинні мати відмінні між собою поля.

робочі рівні

Ті робочі рівні, на яких даний рядок треба виконувати. Робочі рівні задаються у вигляді однозначних чисел (цифр) без розділових знаків. (Робочі рівні описані в наступному розділі).

дія

Визначає спосіб роботи даного рядка. Якщо в цьому полі вказано respawn, то програма буде запускатися заново кожного разу, коли вона закінчить роботу, якщо ж вказано once - програма виконається один раз.

процес

Команда для виконання.

Для того, щоб getty  стартував на першому віртуальному терміналі (/dev/tty1 ) на всіх нормальних багатокористувацьких робочих рівнях (2-5) слід додади до inittab  такий рядок:

1:2345:respawn:/sbin/getty 9600 tty1

Перше поле вказує, що це рядок для /dev/tty1 . В другому кажеться, що команда повинна виконуватися на робочих рівнях 2,3,4 та 5. Третє поле вказує, що після закінчення роботи цієї програми, її треба перезапустити знову (тобто, користувач може зареєструватися в системі, вийти з системи і буде мати можливість зареєструватися знову). Останнє поле рядка виконує команду getty  на першому віртуальному терміналі.142

Якщо Вам потрібно додати терміналів чи модемів в систему, Вам потрібно додати більше рядків в /etc/inittab  - по одному рядку на кожен термінал чи модем. Як це зробити дивіться в підказках по init (8), inittab (5) та getty (8).

Якщо вказана в inittab  програма не може стартувати вірно, вона помирає зразу ж після старту. init  настроєний стартувати її знову. Програма стартує, вмирає, стартує знову, зупиняється... і т.д. Це займає страшенну кількість системних ресурсів. Тому init  веде облік кількості разів, що та чи інша програма стартувала, і якщо це трапляється занадто часто, він затримує старт на п'ять хвилин.


Dmytro Kovalev
1999-06-10
вгору
 
Без реклами
2004-03-23 13:52:48
TopList
© 2000-2003, Київ, Соломко Валентин -- ідея та наповнення, графічне опрацювання -- проєкт дизайн, змiнено -- 08.06.2003 14:25:51