Linuxové distribuce přecházejí od svých starých spouštěcích procesů ve stylu System V k novějšímu mechanismu, démonu systemd a jeho přidruženému nástroji příkazového řádku systemctl. Služby spravované systemd/systemctl vyžadují minimálně konfigurační soubor, který definuje procesy spouštění a vypínání, definici typu, která řídí, jak bude s těmito procesy zacházet operační systém, a jakékoli spustitelné soubory, které jsou potřebné ke spuštění nebo zastavení procesů služeb.
Na většině nových distribucí, které používají systém, bychom spravovali procesy pomocí příkazu systemctl. Vývojáři Linuxu také opustili podporu pro příkaz service; pokud se pokusíme ukončit proces pomocí příkazu service, uvidíme, že ve skutečnosti přesměruje náš požadavek na příkaz systemctl.
Pokud při provádění jakéhokoli příkazu systemctl narazíte na níže uvedenou chybu:
systemctl: command not found
můžete zkusit nainstalovat balíček systemd podle vaší volby distribuce.
Distribuce | Příkaz |
---|---|
Debian | apt-get install systemd |
Ubuntu | apt-get install systemd |
Arch Linux | pacman -S systemd |
Kali Linux | apt-get install systemd |
CentOS | yum install systemd |
Fedora | dnf install systemd |
Raspbian | apt-get install systemd |
Konfigurační soubory
- /usr/lib/systemd/system/ :Obsahuje výchozí systémové soubory jednotek.
- /etc/systemd/system :Obsahuje systémové parametry pro úpravu výchozího chování systemd.
- /run/systemd/system/ :Obsahuje běhovou konfiguraci souborů jednotek.
Příklady příkazů systemctl
1. Zobrazení stavů služby pomocí systemctl:
# systemctl status sshd.service
Stav | Popis |
---|---|
Načteno | Konfigurační soubor jednotky byl úspěšně zpracován |
Aktivní (běžící) | Spuštění s jedním nebo více aktivními procesy |
Aktivní (ukončeno) | Jednorázová konfigurace byla úspěšně dokončena |
Aktivní (čekající) | Běží a čeká na událost |
Neaktivní | Momentálně neběží |
Povoleno | Spustí se při spouštění |
Zakázáno | Nebude spuštěn při spouštění |
Statické | Nelze povolit přímo, ale může být automaticky spuštěn jinou povolenou jednotkou |
2. Zobrazuje stav všech různých jednotek, které jsou aktivní a načtené při spuštění:
# systemctl
3. Zobrazuje stav pouze servisních jednotek, které jsou aktivní:
# systemctl --type=service
nebo
# systemctl list-units --type=service
4. Zobrazuje stav všech načtených servisních jednotek, ať už aktivních nebo neaktivních:
# systemctl --type=service –all
nebo
# systemctl list-units --type=service --all
5. Zobrazí všechny služby, které selhaly:
# systemctl --failed --type=service
6. Zobrazuje, zda je konkrétní služba aktuálně aktivní nebo ne:
# systemctl is-active sshd
7. Zobrazuje, zda je u konkrétní služby povoleno spouštění při spouštění nebo ne:
# systemctl is-enabled sshd
8. Zobrazí povolená, deaktivovaná nebo statická nastavení všech jednotek zadaného typu:
# systemctl list-unit-files --type=service
9. Zobrazí podrobné informace o stavu zadané služby:
# systemctl status sshd.service -l