Вход в систему
РФЭИ/ИТ
Загрузка типичной системы на уровень выполнения 5 Загрузка системы Этапы загрузки системы IT1100: Операционные системы UNIX
Уровни выполнения Остановка системы

Загрузка типичной системы на уровень выполнения 5

Итак, что же происходит после запуска init?

[root@localhost root]# grep rc /etc/inittab
 si::sysinit:/etc/rc.d/rc.sysinit
 l0:0:wait:/etc/rc.d/rc 0
 l1:1:wait:/etc/rc.d/rc 1
 l2:2:wait:/etc/rc.d/rc 2
 l3:3:wait:/etc/rc.d/rc 3
 l4:4:wait:/etc/rc.d/rc 4
 l5:5:wait:/etc/rc.d/rc 5
 l6:6:wait:/etc/rc.d/rc 6
[root@localhost root]# grep initdefault /etc/inittab
 id:5:initdefault:

Пример 10.10. Стартовые сценарии в /etc/inittab

Метод sysinit в inittab означает, что процесс запускается во время начальной загрузки системы, до перехода на какой-нибудь уровень выполнения. Следовательно, первым запускается сценарий /etc/rc.d/rc.sysinit. Он настраивает аппаратуру дисковых массивов, проверяет и монтирует дисковые файловые системы, инициализирует область подкачки, межсетевой экран - словом, делает все, без чего дальнейшая полноценная загрузка системы невозможна. Далее из строчки с initdefault init узнает, что уровень выполнения по умолчанию - пятый ( многопользовательский графический ), и выполняет все строки из inittab, в поле уровни которых есть 5. В частности, запускается сценарий rc с параметром 5 (l5:5:wait:/etc/rc.d/rc 5), который и выполняет необходимые действия из .d-каталога /etc/rc.d/rc5.d. Метод запуска rc - wait, так что init ждет, пока не выполнятся все стартовые сценарии, а потом продолжает разбор inittab:

[root@localhost root]# ls /etc/rc.d/rc5.d/
K10acpid    S10network  S30syslogd     S37gpm      S50xinetd
K20nfs      S13portmap  S31klogd       S40crond    S54sshd
K65apmd     S15random   S32hotplug     S41anacron  S56rawdevices
K86nfslock  S25netfs    S35keytable    S44xfs      S64power
S05kudzu    S30sound    S36update_wms  S45xdm       S98splash

Пример 10.11. Профиль системы на уровне выполнения 5

Иван заметил, что сценарий K20nfs (с параметром stop) не выполнился: соответствующего сообщения на системной консоли не появилось. Беглый просмотр /etc/rc.d/init.d/nfs показал, что этот сценарий предназначен для запуска и остановки сервера сетевой файловой системы (NFS). Сервер используется на уровне 3, а на уровне 5 - нет, поэтому при переходе с 3 на 5 его следует останавливать. Поскольку во время начальной загрузки останавливать нечего, сценарий не выполнился.

Из служб, запускаемых именно на пятом уровне, примечателен шрифтовый сервер, под номером 44 (the X font server, xfs) - программа, у которой графическая подсистема получает шрифты (нередко по сети; тогда такой сервер может быть один на несколько рабочих станций), и экранный диспетчер, под номером 45 (the X display manager, xdm) - программа, регистрирующая пользователя на манер login, с той разницей, что регистрация и запуск графических приложений могут происходить по сети с удаленного компьютера. Тут разрешилась еще одна загадка: вместо обычной виртуальной консоли и login, Иван нередко наблюдал окно графической подсистемы с надписью Login: и Password:, а кое-где даже Логин:, Пароль: и портрет самого пользователя! Оказывается, это были различные версии xdm. Дабы не забивать себе голову разрозненными сведениями, Иван решил до поры (до лекции 15) не использовать графическую среду и нажал Ctrl+Alt+F1, переключившись в текстовую консоль.

Текстовая консоль на пятом уровне доступна: записи вида 1:2345:respawn:/sbin/mingetty tty1 обычно включают 5 в поле уровни.

Уровни выполнения Остановка системы
2012 © ООО «Территория Образования»
Сделано с помощью Circumflex