Jak zarządzać usługami Systemd w systemie Linux
Systemd jest teraz domyślnie używany w większości dystrybucji Linuksa, od Fedory i Red Hata po Ubuntu, Debian, openSUSE i Arch. Polecenie systemctl pozwala uzyskać informacje o statusie systemu i kontrolować uruchomione usługi.
Mimo kontrowersji wprowadza to przynajmniej pewną standaryzację w dystrybucjach Linuksa. Te same komendy pozwalają na zarządzanie usługami w taki sam sposób na dowolnej dystrybucji Linuksa przy użyciu systemd.
Uwaga: Aby zmodyfikować konfigurację systemu w dystrybucji Linuksa, na przykład Ubuntu, która używa sudo, musisz poprzedzić polecenia tutaj sudo. W innych dystrybucjach Linuksa musisz stać się użytkownikiem root z su najpierw polecenie.
Sprawdź, czy Twój system Linux używa Systemd
Jeśli nie masz pewności, czy twoja dystrybucja Linuksa używa systemd, otwórz okno Terminal i uruchom następującą komendę. To pokazuje numer wersji systemu w Twoim systemie Linux, jeśli systemd ma zainstalowany:
systemd -version
Przeanalizuj proces uruchamiania
Komenda "systemd-analyze" umożliwia przeglądanie informacji o procesie rozruchowym, np. Ile czasu zajęło i które usługi (i inne procesy) dodały najwięcej czasu do procesu rozruchu.
Aby wyświetlić ogólne informacje o procesie uruchamiania, uruchom tę komendę:
systemd-analyze
Aby zobaczyć, ile czasu zajęło uruchomienie każdego procesu, uruchom tę komendę:
systemd-analysis wina
Zobacz jednostki
Systemd używa "jednostek", które mogą być usługami (.service), punktami montowania (.mount), urządzeniami (.device) lub gniazdami (.socket). To samo polecenie systemctl zarządza wszystkimi tymi typami jednostek.
Aby wyświetlić wszystkie dostępne pliki jednostek w systemie:
systemctl list-unit-files
Aby wyświetlić listę wszystkich uruchomionych jednostek:
systemctl list-units
Aby wyświetlić listę wszystkich uszkodzonych jednostek:
systemctl - odrzucony
Zarządzaj usługami
Aby wyświetlić listę włączonych i wyłączonych usług, użyj tego samego polecenia systemctl, jak powyżej, ale powiedz, aby tylko lista usług:
systemctl list-unit-files -type = service
Polecenie systemctl umożliwia uruchamianie, zatrzymywanie lub restartowanie usługi. Możesz także nakazać usłudze "przeładowanie" jej konfiguracji.
Polecenie status jest tutaj jedyną akcją, która będzie drukować i wyprowadzać do terminala. Pozostałe polecenia będą działać bezgłośnie.
systemctl start name.service
systemctl stop name.service
systemctl restart name.service
systemctl przeładuj name.service
systemctl status name.service
Użyj polecenia enable systemctl, aby systemd automatycznie uruchamiał usługę (lub inny typ jednostki) podczas uruchamiania. Polecenie wyłączania systemu wyłącza usługi i zatrzymuje automatyczne uruchamianie komputera.
systemctl włącz nazwę.service
systemctl wyłącz name.service
Możesz "zamaskować" usługę lub inną jednostkę, aby w ogóle się nie uruchomić. Musisz go zdekasować, zanim zacznie się w przyszłości:
systemctl mask name.service
systemctl zdemaskować name.service
Oczywiście jest dużo więcej do systemu i jego różnych poleceń. Systemd oferuje różnorodne lub komendy zarządzania energią do zamykania, restartowania, hibernacji i innych kontroli stanu zasilania systemu. Możesz tworzyć własne pliki jednostek, aby tworzyć usługi i montować punkty lub edytować istniejące pliki jednostek.
Systemd oferuje także "cele", które są podobne do poziomów pracy, ale różne. zamiast liczby, cele mają nazwy - możliwe jest, aby systemd był w wielu stanach docelowych naraz. Systemd oferuje również własny dziennik systemowy, do którego można uzyskać dostęp za pomocą komendy journalctl. Domyślnie przechowuje logi systemowe w formacie binarnym - ale możesz przełączyć się na logi w formacie zwykłego tekstu, jeśli wolisz.
W wiki Arch Linux znajdują się bardziej szczegółowe informacje na temat systemu, a większość informacji dotyczy systemu na wszystkich dystrybucjach Linuksa. Powinieneś również sprawdzić swoją własną dokumentację dystrybucji systemu Linux, aby uzyskać więcej informacji.
Image Credit: Bert Heymans na Flickr