Starter tjenester ved oppstart i Linux

Det er mange ganger når det kan være lurt å legge til en ny tjeneste som skal startes når Linux-maskinen starter. Eller ønsker du kanskje å stoppe en tjeneste fra start ved oppstart. Og, som nesten alle aspekter av Linux, er det mange måter å håndtere dette scenariet. Og forskjellige distribusjoner håndtere dette på ulike måter. Så hva er den beste måten for deg å håndtere denne oppgaven?

Fordi ulike distribusjoner håndtere denne oppgaven annerledes, vil vi undersøke hvordan Fedora (og venner) håndtere oppgaven og hvordan Ubuntu (og venner) håndtere oppgaven. I tillegg vil vi også undersøke en nøytral metode som alltid kan arbeide i en klemme. Alle tre metodene vil være kommandolinje, så strekke ut disse fingrene og gjør deg klar til å skrive.

Fedora (og venner)

Fedora distribusjon bruker chkconfig
kommandoen til oppdatering og spørring system kjøre-nivå informasjon for systemtjenester. Bruken av denne kommandoen er:

chkconfig ALTERNATIVER SERVICE PÅ /AV

Hvor:

Alternativer er de ulike alternativene kommandoen tilbud .

SERVICE er den tjenesten du ønsker å legge ved oppstart

ON /OFF er enten på eller av -. avhengig av om du vil at tjenesten skal starte eller ikke

Den forvirring med chkconfig
kommando generelt koker ned til kjørenivå. De typiske Linux køyrenivå er:

0 - Halt

1 - Single user mode

2 - Multi brukermodus

3 - Flerbruker modus med nettverk

4 - Ikke i bruk

5 - X11

6 - Reboot

Så med chkconfig
deg kan også definere noe som medførte at tjenesten starter. Så la oss si at du ønsker Apache til å starte ved oppstart, og du vil at den skal starte for nivåene 3, 4 og 5. For dette ville gi kommandoen (som root bruker):

chkconfig - -nivå 345 httpd på

Nå, hvis du ikke vil Apache til å kjøre ved oppstart kan du gi kommandoen:

chkconfig httpd off

Hvis du ønsker å vite hvilke tjenester som kjører ved oppstart kan du gi kommandoen:

chkconfig --list

Kommandoen ovenfor vil liste ut alle tjenester som starter ved oppstart.

Ubuntu (og venner)

Ubuntu (og venner) tar en helt annen rute til samme destinasjon. I stedet for å bruke chkconfig
Ubuntu bruker update-rc.d
kommandoen. Denne kommandoen gjør ting ganske enkel. Kommandostrukturen er:

update-rc.d ALTERNATIVER

Hvor alternativer er tilgjengelige alternativene og service er den tjenesten du ønsker å starte
Med update-rc.d
det er et alternativ som gjør det enkelt:. defaults
Så for å legge sshd til å starte opp prosessen, ville du gi kommandoen:
< p> sudo update-rc.d sshd mislighold

For å fjerne den samme service fra start up du vil gi følgende kommando:

sudo update-rc .d sshd fjerne

Nå la oss ta en titt på en ikke sikker, nesten-universell metode

rc.local

Det er en annen måte å få en tjeneste å starte. Jeg anbefaler å bruke en av de to ovenfor før du prøver dette betyr. Rc.local fil er en fil som er utført på slutten av den flerbruker kjørenivå. Som standard gjør dette skriptet ingenting, men du kan legge til det slik at det gjør.

Si at du ønsker Apache til å starte ved oppstart, og du ønsker å gjøre det fra rc.local. Du kan gjøre dette ved å legge en av følgende linjer på slutten av /etc/rc.local fil

Fedora.

/etc/init.d/rc. d /httpd stjerners
t

Ubuntu:

/etc/init.d/apache2 starte

Lagre filen, og du bør være klar til å gå. Hvis du ombestemmer deg og ikke vil at tjenesten skal starte ved oppstart, bare fjerne den linjen du har lagt.

Avsluttende tanker

Ovennevnte bør tillate deg å få den tjenesten som må begynne på boot fungerer. Sørg imidlertid, bruker du fordelingen-skrevet metoden før du bruker rc.local metoden. Anmeldelser