Наши партнеры








Книги по Linux (с отзывами читателей)

Библиотека сайта rus-linux.net

На главную -> MyLDP -> Электронные книги по ОС Linux
Linux From Scratch (version 6.8)
Назад Глава 6. Установка программ базовой системы Вперед

6.57. Пакет Sysvinit-2.88dsf

В пакете Sysvinit находятся программы, управляющие запуском, работой и остановкой системы.

Приблизительное время сборки: менее 0,1 SBU

Требуемое дисковое пространство: 1 MB

6.57.1. Установка пакета Sysvinit

Когда изменяются уровни запуска run-levels (например, когда система останавливается), init посылает сигналы завершения тем процессам, которые init сам запустил и которые не должны работать на новом уровне запуска. Когда это происходит, init выдает сообщения вида "Sending processes the TERM signal" ("Отсылка сигнала TERM в процессы"), из-за чего может сложиться впечатление, что эти сигналы посылаются всем процессам, работающим в текущий момент. Чтобы избежать неправильной интерпретации сообщения, измените исходный код так, чтобы эти сообщения выглядели, например, как "Sending processes configured via /etc/inittab the TERM signal" ("Отсылка сигнала TERM в процессы, сконфигурированные в /etc/inittab"):

sed -i 's@Sending processes@& configured via /etc/inittab@g' \
    src/init.c

Поддерживаемая версия программы wall была установлена ранее в пакете Util-linux. Запретите установку версии этой программы и страниц man, имеющихся в пакете Sysvinit, следующим образом:

sed -i -e 's/utmpdump wall/utmpdump/' \
       -e 's/mountpoint.1 wall.1/mountpoint.1/' src/Makefile

Откомпилируйте пакет:

make -C src

В этом пакете набор тестов отсутствует.

Установите пакет:

make -C src install

6.57.2. Конфигурирование пакета Sysvinit

Создайте новый файл /etc/inittab с помощью следующей команды:

cat > /etc/inittab < "EOF"
# Begin /etc/inittab

id:3:initdefault:

si::sysinit:/etc/rc.d/init.d/rc sysinit

l0:0:wait:/etc/rc.d/init.d/rc 0
l1:S1:wait:/etc/rc.d/init.d/rc 1
l2:2:wait:/etc/rc.d/init.d/rc 2
l3:3:wait:/etc/rc.d/init.d/rc 3
l4:4:wait:/etc/rc.d/init.d/rc 4
l5:5:wait:/etc/rc.d/init.d/rc 5
l6:6:wait:/etc/rc.d/init.d/rc 6

ca:12345:ctrlaltdel:/sbin/shutdown -t1 -a -r now

su:S016:once:/sbin/sulogin

1:2345:respawn:/sbin/agetty tty1 9600
2:2345:respawn:/sbin/agetty tty2 9600
3:2345:respawn:/sbin/agetty tty3 9600
4:2345:respawn:/sbin/agetty tty4 9600
5:2345:respawn:/sbin/agetty tty5 9600
6:2345:respawn:/sbin/agetty tty6 9600

# End /etc/inittab
EOF

6.57.3. Описание пакета Sysvinit

Установленные программы: bootlogd, fstab-decode, halt, init, killall5, last, lastb (ссылка на last), mesg, mountpoint, pidof (ссылка на killall5), poweroff (ссылка на halt), reboot (ссылка на halt), runlevel, shutdown, sulogin, telinit (ссылка на init) и utmpdump

Краткое описание

bootlogd

Запись в журнал сообщений, выдаваемых во время загрузки системы

fstab-decode

Запуск команды с аргументами, заданными в fstab

halt

Обычно вызывает команду shutdown с параметром -h, кроме случаев, когда система уже находится на уровне запуска 0, затем заставляет ядро остановить систему; в файле /var/log/wtmp записывается, что система останавливается

init

Первый процесс, который должен быть запущен, после того, как ядро инициализирует аппаратное обеспечение; init завершает процесс загрузки, запуская все необходимые процессы

killall5

Посылает сигнал во все процессы, за исключением собственных процессов сессии, так что вы не уничтожите командную оболочку, в которой работает скрипт, запустивший данную команду

last

Показывает, какие пользователи последними входили в систему (и покидали ее), выполняя для этого поиск в файле /var/log/wtmp в обратном порядке; также показывает информацию о загрузках системы, ее остановках и изменениях ее уровней запуска

lastb

Показывает неудачные попытки входа в систему, которые записаны в файле /var/log/btmp

mesg

Определяет, могут ли другие пользователи посылать сообщения на терминал текущего пользователя

mountpoint

Проверяет, является ли директорий точкой монтирования

pidof

Сообщает идентификаторы процессов PID для указанных программ

poweroff

Посылает в ядро системы команду остановить систему и выключить компьютер (смотрите команду halt)

reboot

Посылает в ядро системы команду перезагрузить систему (смотрите команду halt)

runlevel

Сообщает о предыдущих и текущих уровнях запуска так, как это указано в последней записи в файле /var/run/utmp

shutdown

Безопасным образом останавливает систему, посылая сигналы всем процессам и оповещая об этом всех пользователей, находящихся в системе

sulogin

Позволяет пользователю root войти в систему; обычно вызывается с помощью init при переходе системы в однопользовательский режим

telinit

Сообщает в init, на какой уровень произошло изменение уровня запуска

utmpdump

Отображает в удобочитаемом виде содержимое указанного файла, регистрирующего вход в системе


Предыдущий раздел: Оглавление Следующий раздел:
Пакет Sysklogd-1.5   Пакет Tar-1.25