Jak korzystać z SystemD w Debian

Jak korzystać z SystemD w Debian
Korzeniem w strukturze drzewa procesów jądra Linux jest systemd. W rezultacie może być używany do prowadzenia bardzo przydatnych działań, takich jak automatyczne kontrolowanie usług i maszyny, uruchamianie ich podczas rozruchu. Przyjrzymy się wszystkim kluczowym czynnościom, które można wykonać za pomocą SystemD. Zaczniemy od wprowadzenia, a następnie przejdziemy do implementacji. Zacznijmy!

Co jest Systemd?

Systemd Software Suite stanowi podstawę dla systemu operacyjnego Debian. Proces główny w drzewie procesowym Linux jest odpowiedzialny za zarządzanie innymi procesami i aplikacjami i służy do sterowania aplikacjami w trybie na poziomie jądra. Na przykład uruchomienie Dockera jako usługi.

Jak korzystać z SystemD do różnych zadań

Pliki jednostkowe

SystemD wykorzystuje „jednostkę” do obsługi wszystkich usług i procesów systemowych. Jednostki systemowe używają plików konfiguracyjnych do rządzenia ich różnymi działaniami. Pliki konfiguracji jednostek są podzielone na trzy typy:

„Domyślne pliki konfiguracyjne jednostki” z plikami konfiguracyjnymi zawartymi w katalogu ”/usr/lib/systemd/system"

„Pliki konfiguracyjne jednostki specyficzne dla systemu” z plikami konfiguracyjnymi jednostki specyficznej dla systemu zawarte w „/etc/systemd/system"
"
„Plik konfiguracyjny jednostki w czasie wykonywania” z plikami konfiguracyjnymi znalezionymi w katalogu ”/run/systemd/system"

Poniżej znajduje się polecenie wymieniania plików jednostek wraz z ich wyjściem

$ Systemctl List-Unit-Files

Wyjście

Stan pliku jednostki
Proc-Sys-FS-Binfmt_Misc.Automount statyczny
DEV-HEGEPAGES.Mount Static
dev-mqueue.Mount Static
Proc-Sys-FS-Binfmt_Misc.Mount Static
SYS-FS-FUSE Connections.Mount Static
SYS-KRENEL-CONFIG.Mount Static
SYS-KRENEL-DEBUG.Mount Static
TMP.zamontować wyłączone
Brandbot.ścieżka wyłączona
Systemd-Cask-Password-Console.ścieżka statyczna
Systemd-Cask-Password-Plymouth.ścieżka statyczna
Systemd-Cask-Password Wall.ścieżka statyczna
sesja 1.Zakres statyczny
Arp-Ethers.usługa wyłączona
Auditd.Włączona usługa
[email protected]łączona usługa

Spróbuj użyć polecenia Linux GREP do filtrowania wyłącznie włączonych usług.

$ Systemctl List-Unit-Files | GREP włączony

Wyjście

Auditd.Włączona usługa
[email protected]łączona usługa
Crond.Włączona usługa
dbus-org.Fedoraproject.Firewalld1.Włączona usługa
dbus-org.Freedesktop.NM-Dispatcher.Włączona usługa
Firewalld.Włączona usługa
[email protected]łączona usługa
Irqbalance.Włączona usługa
Kdump.Włączona usługa
LVM2-Monitor.Włączona usługa

Rozpocznij i zatrzymywanie usług Usługi

$ sudo systemctl start
$ sudo systemctl stop

Poniżej znajduje się przykład uruchamiania kontenera Docker jako usługi.

Aby uruchomić aplikację (nazwijmy ją „x”) jako usługa systemD, utwórz następujący plik w katalogu „/etc/systemd/system” i nazwij ją jako
'doker.Some_name.praca' :

[Jednostka]
Opis = x pojemnik
After = Docker.praca
Wants = Network-online.Target Docker.gniazdo elektryczne
Wymaga = dokera.gniazdo elektryczne
[Praca]
Restart = zawsze
ExecStart =/usr/bin/docker start -a Some_name
Execstop =/usr/bin/docker stop -t 10 Some_name
[Zainstalować]
Wantby = Multi-User.cel

Aby rozpocząć usługę z rozruchem systemowym, użyj następującego polecenia:

SystemCtl Włącz Docker.Some_name

Użyj następujących poleceń, aby zatrzymać i rozpocząć usługę ręcznie:

Sudo Service Stop Docker.Some_name
Sudo Service Start Docker.Some_name

Sprawdź status usługi

Poniżej znajduje się polecenie sprawdzenia statusu uruchomionej usługi.

Status $ sudo systemCtl

Uruchom ponownie usługę

Możesz także ponownie uruchomić usługę bez konieczności zatrzymywania się i rozpoczęcia, co wymaga więcej wysiłku. Poniżej znajduje się polecenie wykonania tego zadania.

$ sudo systemctl restart firewalld

Uruchom ponownie i wyłącz

Poniżej znajdują się polecenia, aby odpowiednio ponownie uruchomić i zamknąć system. (Jako administrator systemu powinieneś również wiedzieć, jak wyłączyć system za pomocą wiersza poleceń)

$ sudo systemCtl zrestartuj
$ sudo systemCtl Poweroff

Uruchamianie usług w czasie rozruchu

Usługi takie jak Docker muszą zostać uruchomione, gdy tylko urządzenie zostanie włączone. Aby to osiągnąć, możesz wymienić poniższe polecenie.

$ sudo systemCtl włącz zaporę ogniową

Spróbuj uruchomić komputera, a zauważysz, że usługa zaczyna się automatycznie bez interakcji człowieka.

Wniosek

W tym poście zobaczyliśmy, jak Systemd może wykonywać wspólne zadania administracyjne i konfiguracyjne z komputerem. Administrator systemu może używać powyższych poleceń do automatyzacji konfiguracji usług działających w komputerze. Pamiętaj, aby wypróbować te polecenia ze swoimi niestandardowymi usługami i zrealizować moc Systemd.