Sådan administreres Systemd Services på et Linux-system
Systemd bruges nu som standard i de fleste Linux-distributioner, fra Fedora og Red Hat til Ubuntu, Debian, openSUSE og Arch. Systemctl-kommandoen giver dig mulighed for at få oplysninger om systemd's status og styring af løbende tjenester.
På trods af kontroversen introducerer dette i hvert fald nogle standardisering på tværs af Linux-distributioner. De samme kommandoer giver dig mulighed for at administrere tjenester på samme måde på enhver Linux-distribution ved hjælp af systemd.
Bemærk: For at ændre din systemkonfiguration på Linux-distribution som Ubuntu, der bruger sudo, skal du prefikse kommandoerne her med sudo. På andre Linux-distributioner skal du blive rodbrugeren med su kommando først.
Kontroller, om dit Linux-system bruger Systemd
Hvis du ikke er sikker på, om din Linux-distribution bruger systemd, skal du åbne et Terminal-vindue og køre følgende kommando. Dette viser dig versionsnummeret til systemd på dit Linux-system, hvis det har systemd installeret:
systemd-version
Analyser startprocessen
Systemd-analyse-kommandoen giver dig mulighed for at se oplysninger om din startproces, f.eks. Hvor lang tid det tog, og hvilke tjenester (og andre processer) tilføjede mest tid til opstartsprocessen.
Hvis du vil se oplysninger om startprocessen generelt, skal du køre denne kommando:
systemd-analysere
For at se, hvor lang tid hver proces tog for at starte, skal du køre denne kommando:
systemd-analysere skyld
Se enheder
Systemd bruger "enheder", som kan være tjenester (.service), monteringspunkter (.mount), enheder (.device) eller stikkontakter (.socket). Den samme systemctl-kommando styrer alle disse typer enheder.
Sådan får du vist alle tilgængelige enhedsfiler på dit system:
systemctl list-unit-filer
For at liste alle løbende enheder:
systemctl list-enheder
For at liste alle fejlede enheder:
systemctl-failed
Administrer Services
For at se en liste over aktiverede og deaktiverede tjenester bruger du den samme systemctl-kommando som ovenfor, men fortæller det kun at liste tjenester:
systemctl list-unit-files -type = service
Systemctl-kommandoen giver dig mulighed for at starte, stoppe eller genstarte en tjeneste. Du kan også fortælle en tjeneste at "genindlæse" dens konfiguration.
Statuskommandoen er den eneste handling her, der vil udskrive og output til terminalen. De andre kommandoer vil lydløst træde i kraft.
systemctl start name.service
systemctl stop name.service
systemctl genstart name.service
systemctl genindlæs name.service
systemctl status name.service
Brug kommandoen systemctl enable til at få systemd automatisk at starte en tjeneste (eller en anden type enhed) ved opstart. Den systemctl deaktivere kommando deaktiverer en tjeneste og stopper den fra at starte automatisk med din computer.
systemctl enable name.service
systemctl deaktiver name.service
Du kan "maskere" en tjeneste eller en anden enhed for at forhindre det i gang. Du skal afmaskere det, før det kan starte i fremtiden:
systemctl mask name.service
systematl unmask name.service
Der er meget mere at systemd og dens forskellige kommandoer end dette selvfølgelig. Systemd tilbyder en række eller strømstyringskommandoer til at lukke, genstarte, dvale og ellers styre systemets strømtilstand. Du kan skrive dine egne enhedsfiler til at oprette tjenester og montere punkter eller redigere eksisterende enhedsfiler.
Systemd tilbyder også "mål", der ligner runleveller, men forskellige. i stedet for et tal har mål navne - det er muligt for systemd at være i flere måltilstande på én gang. Systemd tilbyder også sin egen system journal, som kan nås med journalctl kommandoen. Som standard gemmer det systemlogfiler i binært format - men du kan skifte til tekstlogfiler, hvis du foretrækker det.
Arch Linux wiki har mere dybdegående information om systemd, og de fleste af de oplysninger der gælder for systemd på alle Linux distributioner. Du bør også kontrollere din egen Linux distribution systemdokumentation for mere information.
Billedkredit: Bert Heymans på Flickr