Работа с systemd
Описание
Systemd - системный демон, менеджер всех задач после старта ядра Linux
Управляемые элементы называются юнитами
сервисы
монтирование
таймеры
и т.д.
systemctl - интерфейс управления для работы с systemd
Для администратора наиболее важным функционалом является управление сервисами
[root@centos8 ~]# systemctl
add-requires get-default list-machines revert
add-wants halt list-sockets set-default
cancel help list-timers set-environment
cat hibernate list-unit-files set-property
condreload hybrid-sleep list-units show
condrestart import-environment mask show-environment
condstop is-active poweroff start
daemon-reexec is-enabled preset status
daemon-reload is-failed preset-all stop
default isolate reboot suspend
disable is-system-running reenable suspend-then-hibernate
edit kexec reload switch-root
emergency kill reload-or-restart try-reload-or-restart
enable link rescue try-restart
exit list-dependencies reset-failed unmask
force-reload list-jobs restart unset-environment
[root@centos8 ~]# systemctl -t help
Available unit types:
service
socket
target
device
mount
automount
swap
timer
path
slice
scope
systemctl list-unit-files - отобразит файлы юнитов
[root@centos8 ~]# systemctl list-unit-files
UNIT FILE STATE
proc-sys-fs-binfmt_misc.automount static
-.mount generated
boot.mount generated
dev-hugepages.mount static
dev-mqueue.mount static
proc-fs-nfsd.mount static
proc-sys-fs-binfmt_misc.mount static
sys-fs-fuse-connections.mount static
sys-kernel-config.mount static
sys-kernel-debug.mount static
tmp.mount disabled
var-lib-machines.mount static
var-lib-nfs-rpc_pipefs.mount static
cups.path enabled
ostree-finalize-staged.path disabled
systemd-ask-password-console.path static
systemd-ask-password-plymouth.path static
systemd-ask-password-wall.path static
session-7.scope transient
session-9.scope transient
session-c1.scope transient
accounts-daemon.service enabled
systemctl list-units - отобразит все юниты системы
Управление сервисами
"Disabled/enabled" - определяет, будет ли сервис автоматически запускаться при загрузке системы
"Start/stop" - определяют состояние для текущего сеанса системы
[root@centos8 ~]# systemctl status dhcpd
● dhcpd.service - DHCPv4 Server Daemon
Loaded: loaded (/usr/lib/systemd/system/dhcpd.service; enabled; vendor preset: disabled)
Active: active (running) since Sat 2020-02-29 20:54:07 MSK; 24h ago
Docs: man:dhcpd(8)
man:dhcpd.conf(5)
Main PID: 103647 (dhcpd)
Status: "Dispatching packets..."
Tasks: 1
Memory: 1.1M
CGroup: /system.slice/dhcpd.service
└─103647 /usr/sbin/dhcpd -f -cf /etc/dhcp/dhcpd.conf -user dhcpd -group dhcpd --no-pid
[root@centos8 ~]# systemctl stop dhcpd
[root@centos8 ~]# systemctl status dhcpd
● dhcpd.service - DHCPv4 Server Daemon
Loaded: loaded (/usr/lib/systemd/system/dhcpd.service; enabled; vendor preset: disabled)
Active: inactive (dead) since Sun 2020-03-01 21:37:54 MSK; 3s ago
Docs: man:dhcpd(8)
man:dhcpd.conf(5)
Process: 103647 ExecStart=/usr/sbin/dhcpd -f -cf /etc/dhcp/dhcpd.conf -user dhcpd -group dhcpd --no-pid $>
Main PID: 103647 (code=killed, signal=TERM)
Status: "Dispatching packets..."
Конфигурирование сервисов
По-умолчанию предоставляемые системой файлы юнитов хранятся в /usr/lib/systemd/system
Не рекомендуется для правки, лучше создать файл в /etc/systemd/system, которые будут выступать в роли оверлея
Пользовательские файлы хранятся в /etc/systemd/system
C обновлением пакетов их файлы перезапишутся
Файлы текущего сеанса генерируются в /run/systemd
Рекомендуется использовать для редактирования systemtl edit <unit.service>
systemctl show покажет список доступных параметров
Для применения может потребоваться systemctl daemon-reload и systemctl restart <service>
Last updated
Was this helpful?