Рубрики
boot \ grub \ grub2 \ init \ systemd

Загрузка системы \ init

 
Загрузившись, ядро стартует процесс init, который запускает rc, 
который в свою очередь выполняет все скрипты, соответствующего уровня запуска. 
Скрипты расположены в /etc/init.d и слинкованы в /etc/rc.d/rcN.d, где N, означает уровень запуска.
Уровень запуска по-умолчанию, установлен в /etc/inittab, и как правило имеет значение 3 или 5:
# grep default: /etc/inittab 
id:3:initdefault:

Текущий режим работы может быть изменен с помощью все того-же init. Например, перейдем с 3 уровня на 5:
# init 5 # Переходим в режим 5
0       Shutdown and halt
1       Single-User mode (also S)
2       Multi-user without network
3       Multi-user with network
5       Multi-user with X
6       Reboot

Используйте chkconfig для конфигурирования программ, 
которые должны стартовать при загрузке в соответствующий режим.
# chkconfig --list # Список всех init-скриптов
# chkconfig --list sshd # Показать статус sshd
# chkconfig sshd --level 35 on # Конфигурирование sshd для уровня 3 и 5
# chkconfig sshd off # Отключение sshd для всех уровней

Debian и основанные на нем дистрибутивы, Ubuntu или Knoppix, для управления скриптами Runlevel, 
используют команду update-rc.d. 
По-умолчанию, 2,3,4 и 5 уровень для старта, и 0,1 и 6 для останова.
# update-rc.d sshd defaults # Активировать sshd с уровнем запуска по-умолчанию
# update-rc.d sshd start 20 2 3 4 5 . stop 20 0 1 6 . # Непосредственное указание уровней запуска и останова
# update-rc.d -f sshd remove # Запретить sshd для всех уровней
# shutdown -h now (or # poweroff) # Остановить и выключить систему

fsboot Загрузка

 
FreeBSD и большинство Unixes
# fstat -f /home # для точки монтирования
# fstat -p PID # для приложения с PID
# fstat -u user # для имени пользователя
Найти открытый файл для Xorg:
# ps ax | grep Xorg | awk '{print $1}'
1252
# fstat -p 1252
USER CMD PID FD MOUNT INUM MODE SZ|DV R/W
root Xorg 1252 root / 2 drwxr-xr-x 512 r
root Xorg 1252 text /usr 216016 -rws--x--x 1679848 r
root Xorg 1252 0 /var 212042 -rw-r--r-- 56987 w
Найти файл с inum 212042 в директории /var можно так:
# find -x /var -inum 212042
/var/log/Xorg.0.log