Sådan bruges systemctl-kommando til at aktivere og deaktivere tjenester

Sadan Bruges Systemctl Kommando Til At Aktivere Og Deaktivere Tjenester



Systemd er en af ​​de meget udbredte serviceadministratorer på Linux, der kommer med systemctl-kommandolinjeværktøjet til at administrere systemtjenester, såsom at starte en tjeneste, stoppe, aktivere og deaktivere den.

I denne vejledning vil jeg forklare, hvordan man aktiverer en tjeneste på Linux ved hjælp af systemctl-kommandoen, og hvordan man deaktiverer den.

Hvad betyder det at aktivere en service?

Aktivering af en tjeneste er en anden funktion end at starte en tjeneste. Systemctl start-kommandoen starter kun tjenesten og holder den aktiveret, indtil den manuelt stoppes før opstart, eller systemet genstartes. På den anden side betyder aktivering af en tjeneste, at tjenesten vil blive startet ved opstart.







Når den er aktiveret, opretter en tjeneste et symbolsk link i målbiblioteket , sikre, at tjenesten er aktiveret ved opstart. Målet er angivet i [Installere] sektionen af ​​servicefilen med Efterlyst Af direktiv.





I ovenstående billede er målet multi-user.target som angiver kørselsniveauet for et system. Multi-user.target betyder, at tjenesten vil blive aktiveret, når systemet har nået tilstanden til at levere multi-user ikke-grafiske sessioner.





Sådan aktiveres en tjeneste på Linux

Før du aktiverer en tjeneste, skal du først kontrollere, om den allerede er aktiveret eller deaktiveret ved hjælp af er-aktiver d mulighed med systemctl.

sudo systemctl er aktiveret [ Tjenestenavn ]

For at aktivere en eller flere tjenester til at starte ved opstart, skal du bruge systemctl kommando med aktivere mulighed.



sudo systemctl aktivere [ Tjenestenavn ]

I ovenstående kommandoer skal du erstatte [Tjenestenavn] med navnet på tjenesten eller stien til tjenesten.

For eksempel for at aktivere SSH-tjenesten.

sudo systemctl aktivere ssh.service

Ved aktivering opretter den en multi-user.target.wants mappe i /etc/systemd/system som indeholder symbollinket til servicefilen.

Aktivering af en tjeneste ved hjælp af systemctl enable-kommandoen aktiverer ikke tjenesten. For at aktivere tjenesten og straks starte den, skal du bruge aktivere og -nu muligheder.

sudo systemctl aktivere --nu [ Tjenestenavn ]

Sådan genaktiveres en tjeneste på Linux

Genaktivering af en tjeneste betyder først at deaktivere tjenesten og aktivere den igen. Det fjerner tjenestens symbolske links og genskaber dem.

sudo systemctl genaktiveres [ Tjenestenavn ]

Lad os genaktivere SSH-tjenesten ved hjælp af ovenstående kommando.

sudo systemctl genaktiver ssh.service

Som det kan ses i outputtet, er de symlinkede filer fra /etc/systemd/system mappen fjernes først og oprettes derefter igen. Det starter eller stopper ikke tjenesten; tjenesten forbliver i sin oprindelige tilstand.

Bemærk, at genaktivering kun tager tjenestenavnene og accepterer ikke stierne.

Sådan deaktiveres en tjeneste på Linux

Brug systemctl med deaktivere mulighed for at deaktivere en eller flere tjenester.

sudo systemctl deaktiver [ Tjenestenavn ]

Den tager ikke stien til servicefilen.

Lad os for eksempel deaktivere ssh-tjenesten.

sudo systemctl deaktiver ssh.service

Deaktivering af tjenesten stopper ikke tjenesten, da den vil fortsætte med at køre, medmindre den stoppes manuelt, eller systemet genstartes.

For at deaktivere og stoppe tjenesten med det samme, skal du bruge -nu mulighed med systemctl.

sudo systemctl deaktiver --nu [ Tjenestenavn ]

Konklusion

For at indstille en tjeneste til aktiveret ved opstart, bruges systemctl-kommandoen med enable-indstillingen. Det kræver et eller flere service-/enhedsnavne eller stier. I selvstudiet dækkede jeg, hvordan man aktiverer en tjeneste, og hvordan man genaktiverer en tjeneste. Desuden har jeg også taget hensyn til at nævne deaktivering af servicekommandoer. For at lære mere om systemctl-kommandolinjeværktøjet, brug mand systemctl kommando.