Sådan administreres tjenester med Systemd
En af de vigtigste færdigheder, som Systemd nybegynder kan lære, er, hvordan man styrer deres computers tjenester. I denne artikel vil vi diskutere det grundlæggende: start, stop, aktivering og deaktivering af tjenester fra Linux-kommandolinjen.
Disse opgaver er ikke vanskelige at mestre, men de bliver et ubestrideligt behov, når du er tvunget til at stoppe et out-of-control program eller når du vil installere en ny applikation.
Hvad er Systemd?
Chancerne er gode, at din Linux-computer kører Systemd. Mange distroer, herunder Arch Linux, Debian, Fedora, Red Hat og Ubuntu, alle bruger det som standard. Nogle distributioner ville være vanskelige eller umulige at køre uden at blive installeret.
Systemd arbejder først og fremmest som en robust erstatning til det gamle init-projekt SysV, som UNIX distros havde brugt siden 1980'erne. Nøgleudvikler Lennart Poettering har også udtalt, at Systemd går ud over init opgaver og kan også fungere som en udviklingsplatform og et link mellem individuelle applikationer og Linux-kernen.
Dette har forårsaget en masse forargelse på Poetterings platform som helhed, primært fordi dens monolitiske karakter synes at virke mod "UNIX-vejen" af simpel modulær kode.
Uanset hvilken side du vælger i debatten om Systemd's legitimitet, kan du stadig falde under sin fløj dette sekund. Derfor skal du vide, hvordan du bruger det, og der er ingen bedre måde at komme i gang end at installere et nyt program.
Start og stop enheder
Systemd starter, stopper, aktiverer og deaktiverer "enheder". Enheder består af tjenester, monteringspunkter, enheder og stikkontakter på din computer. I disse instruktioner arbejder du med tjenester (.service-filer), de filer, der repræsenterer programmer på din computer, der venter på adgang til en bestemt opgave.
Flere Linux distros har adgang til Hddtemp
, et lille værktøj, der kontrollerer temperaturen på en harddisk. Hddtemp har en .service fil og kan køre som en dæmon, så du kan starte det manuelt og aktivere det at starte ved opstart. Det er lille og ikke-invasiv; Du kan downloade det, prøv det sammen med Systemd, og slet det senere, hvis du ikke vil have det rundt.
Installer den på Arch med:
sudo pacman -S hddtemp
og på Ubuntu med:
sudo apt-get install hddtemp
Start nu det nye værktøj med Systemd:
sudo systemctl start hddtemp.service
Du kan derefter genstarte, stoppe og se status for man-db med den samme stil kommando - systemctl unit
. Bemærk, at "enhed" fungerer som stenografi for enhver "unit.service" -fil, du vil bruge.
sudo systemctl start hddtemp
, sudo systemctl stop hddtemp
, og sudo systemctl restart hddtemp
kommandoer producerer ingen output som standard, når de er succesfulde.
Du kan få flere oplysninger om tjenesten med:
sudo systemctl status hddtemp
I dette tilfælde afslører kommandoen navnet på tjenesten, dens tilstand (aktiv eller inaktiv) og start / stop, der er sket i løbet af de sidste minutter. Hvis nogen af ovennævnte kommandoer mislykkedes eller producerede en fejl, ville disse problemer dukke op i statusrapporten.
Aktivering og deaktivering af enheder
Når du starter eller stopper en enhed, gennemfører du en manuel proces, som sandsynligvis kun varer gennem din aktuelle session. Når du genstarter, kan den enhed, du startede, ikke køre automatisk.
For at få enheder start ved opstart, prøv at aktivere dem med Hddtemp:
sudo systemctl aktivere hddtemp
Udgangen her viser, at Systemd har oprettet en symlink for at fortælle sig selv at starte Hddtemp, når computeren går igennem opstartsprocessen. I fremtiden er du velkommen til at bruge genvejen:
sudo systemctl enable - nu enhed
at både aktivere og starte en enhed i en kommando.
Nu kan du lige så nemt deaktivere Hddtemp:
sudo systemctl deaktiver hddtemp
Hvis du nogensinde er usikker på, om en enhed er aktiveret, kan du køre sudo systemctl is-enabled unit
at finde ud af.
Du kan nu fjerne Hddtemp fra din computer, hvis du ikke vil have det rundt.
Konklusion
Disse kommandoer er slutresultatet af den komplekse maskine, der er Systemd. Elsker det eller hader det, det kan ikke benægtes, at hvis du bruger Systemd, vil disse kommandoer blive nyttige til styring af programmer på din computer.
Tjek "COMMANDS" sektionen på Systemctl man side med man systemctl
. Du finder disse samme kommandoer - start, stop, aktiver, deaktiver - sammen med mange andre, der er lige så nemme at bruge, men graver dybere end disse grundlæggende eksempler vist her.