RC0(1M) RC0(1M)
НАЗВАНИЕ
rc0 - процедура остановки системы
СИНТАКСИС
/etc/rc0
ОПИСАНИЕ
Процедура /etc/rc0 вызывается при изменениях уровня вы-
полнения системы, предполагающих ее деактивацию перед
выключением.
Вообще говоря, имеется три уровня, требующих выполнения
процедуры rc0: уровень 0 (остановка) уровень 5 (переда-
ча управления программам в ПЗУ) уровень 6 (перезагруз-
ка). Например, строка файла /etc/inittab может выгля-
деть так:
r0:0:wait:/etc/rc0 1> /dev/console 0>&1
Некоторые из действий, производимых процедурой rc0, вы-
полняются файлами из каталога /etc/shutdown.d (что яв-
ляется атавизмом) и файлами, начинающимися с буквы K,
из каталога /etc/rc0.d. Эти файлы выполняются в алфа-
витном порядке [подробнее см. пункт ФАЙЛЫ в rc2(1M)],
деактивируя соответствующие системные службы. Таким об-
разом, способ остановки определяется комбинацией команд
процедуры rc0 и файлов из каталога /etc/rc0.d.
Рекомендуется, чтобы процедура rc0 выполняла следующую
последовательность действий:
1. Прекращение работы системных служб и демонов
Различные службы (планировщик принтеров, демон ре-
гистрации ошибок и т.п.) нормально завершаются.
Если в систему добавляются новые службы, требующие
аккуратного завершения при остановке системы, в
каталог /etc/rc0.d следует добавить соответствую-
щие файлы.
2. Завершение процессов
Всем выполняемым процессам посылается сигнал за-
вершения SIGTERM, что дает им возможность аккурат-
но терминироваться.
3. Уничтожение процессов
После паузы всем оставшимся процессам посылается
сигнал уничтожения SIGKILL [посредством команды
killall(1M)], перехватить или проигнорировать ко-
торый нельзя.
В результате предшествующих действий активными ос-
таются лишь специальные системные процессы 0 и 1,
а также процесс, связанный с /etc/rc0.
4. Размонтирование всех файловых систем
Остается смонтированной только корневая (/) файло-
вая система.
Дальнейшие действия определяются уровнем выполнения (0,
5 или 6) и содержимым файла /etc/inittab. Если, как в
случае уровня 0, в файле не определены дополнительные
действия, операционная система ничего не делает и нет
возможности получить ее отклик. Все, что можно сделать
- это либо выключить питание, либо вызвать аппаратный
монитор.
Процедура rc0 может быть выполнена только суперпользо-
вателем.
СМ. ТАКЖЕ
killall(1M), mountall(1M), rc2(1M), shutdown(1M).
kill(1) в Справочнике пользователя.
kill(2), inittab(4) в Справочнике программиста.
|