====== Система инициализации systemd ======
Подсистема инициализации и управления службами в Linux.\\
Systemd фактически уже вытеснила своего предшественника - **init**.\\
Включает в себя менеджер журналов **[[:linux:overall:journal|journald]]**, менеджер сети **networkd**, менеджер устройств **udevd**.
Параметры служб находятся в файлах по пути "**/etc/systemd/service**", при изменении содержимого, нужно перечитать параметры, командой
systemctl daemon-reload
# загруженные модули
systemctl -a | grep zfs
# загруженные утилиты
list-unit-files | grep zfs
===== Система инициализации linux =====
**/etc/rc№.d**\\
Linux содержит несколько уровней загрузки, семь, (типа режим восстановления, загрузка в однопользовательском режиме и т.д.)\\
В этих папках перечислены наборы стартовых скриптов.По умолчанию загружается 5ый уровень\\
Первая буква (S(start) или K(kill)), далее порядковый номер,
**/etc/init.d**\\
Содержит скрипты инициализации, ссылки на которые содержатся в папках "/etc/rc№.d", в соответствии с уровнем загрузки\\
**Systemd**\\
Замена традиционной "inittab" системы, обеспечивает лучшую работу с зависимостями\\ Так же имеет уровни загрузки. Использует те же скрипты инициализации\\
:!: Подробнее
Посмотреть текущий уровень - "systemctl get-default" (еще есть runlevel, хз)\\
"graphical.target" аналог 5 уровня inittab\\
Все доступные уровни - "ls -l /lib/systemd/system/runlevel*"\\
Дефолтный уровень задается файлом "/etc/systemd/system/default.target", он является ссылкой на уровни в /lib. Для смены есть команда "systemctl set-default"\\
# Аналогия с init
Runlevel Описание Systemd
0 poweroff.target
1 rescue.target
2 multi-user.target
3 multi-user.target
4 multi-user.target
5 graphical.target
6 reboot.target