Як я можу перерахувати всі enabled
послуги systemctl
?
Я знаю, що запущена systemctl
команда сама по собі перераховує всі служби, але хотіла б отримати лише enabled
ті.
man systemctl
.
Як я можу перерахувати всі enabled
послуги systemctl
?
Я знаю, що запущена systemctl
команда сама по собі перераховує всі служби, але хотіла б отримати лише enabled
ті.
man systemctl
.
Відповіді:
systemctl list-unit-files | grep enabled
перерахує всі включені .
Якщо ви хочете , які з них в даний час працює , вам потрібно systemctl | grep running
.
Використовуйте той, який шукаєте. Увімкнено, не означає, що він працює. А біг не означає, що він включений. Це дві різні речі.
Увімкнено означає, що система запустить послугу при наступному завантаженні. Тож якщо ви ввімкнули послугу, її все одно потрібно запустити вручну, або перезавантажити, і вона запуститься.
Запуск означає, що він насправді працює зараз, але якщо його не ввімкнено, він не перезапуститься при перезавантаженні.
systemctl | grep running
не перераховуйте мені нічого! Навіть якщо щось працює, перераховано лише його статус:enabled, disabled, masked, static
systemctl list-unit-files --state=running
man systemctl
констатує:
--state=
Аргумент повинен бути коми список одиничних
LOAD
,SUB
абоACTIVE
станів. Перераховуючи одиниці, показуйте лише ті, які є у зазначених станах. Використовуйте--state=failed
для показу лише несправних одиниць.
Пояснення:
LOAD
: Відображає, чи правильно було завантажено визначення одиниці.
ACTIVE
: Стан активації блоку високого рівня, тобто узагальнення SUB
.
SUB
: Стан активації низького рівня, значення залежать від типу одиниці.
Хоча ви також можете використовувати це для показу лише enabled
одиниць із:
systemctl list-unit-files --state=enabled
Якщо блок є, enabled
це означає, що система запустить його при запуску. Хоча налаштування чогось enabled
насправді також start
не так, вам потрібно буде зробити це вручну або перезавантажити систему після встановлення enabled
.
systemctl enable --now ...
--state=enabled
не впливає на системну версію 215 (на Raspbian 8 Jessie), але вона працює на системній версії 229 (на Ubuntu 16.04.03 Xenial).
Щоб перелічити всі systemd
послуги, які є у state=active
таsub=running
systemctl list-units --type=service --state=running
Щоб перелічити всі systemd
серійні сервіси, які перебувають у state=active
підпорядкуванні, або запущені, або запущені
systemctl list-units --type=service --state=active
Щоб побачити "включені" служби, включаючи ці, які все ще знаходяться на стадії запуску / запуску:
systemctl list-unit-files --type service --state enabled,generated
Щоб переглянути всі запущені послуги, виконайте наведені нижче дії.
systemctl list-units --type service --state running
sshd
проти ssh
та syslog
проти rsyslog
.
Також огляд усіх активних та несправних служб:
systemctl list-units --type service --state running,failed