Denne artikkelen er en speilartikkel om maskinoversettelse, vennligst klikk her for å hoppe til originalartikkelen.

Utsikt: 11617|Svare: 0

[Linux] Forstå /etc/init.d-katalogene og /etc/rc.local-skriptene på Linux-systemer

[Kopier lenke]
Publisert på 13.11.2017 11:53:19 | | |
Den engelske versjonen av denne artikkelen er fra: http://www.ghacks.net/2009/04/04/get-to-know-linux-the-etcinitd-directory/

1. Om /etc/init.d
     Hvis du noen gang har brukt et Linux-system, har du hørt om init.d-mappen. Hva er egentlig denne katalogen til? Det gjør bare én ting til slutt, men det er ikke noe trivielt, det gjøres for hele systemet, så det er veldig viktig. init.d-katalogen inneholder mange start- og stoppskript for ulike tjenester i systemet. Den styrer alt fra acpid til x11-common. Selvfølgelig er init.d langt fra så enkelt. (Oversetterens merknad: ACPID er en ny strømstyringsstandard for Linux-operativsystemer; X11 kalles også X vindussystem, X vindussystem (X11 eller X) er et vindussystem med bitmap-visning. Det er et standard verktøysett og protokoll for å bygge grafiske brukergrensesnitt på Unix og Unix-lignende operativsystemer, samt OpenVMS, og kan brukes for nesten alle moderne operativsystemer.
    Når du ser på /etc-katalogen, vil du finne mange kataloger som finnes i form av rc#.d (hvor # representerer et spesifisert initialiseringsnivå, intervallet er 0~6). Under disse katalogene finnes det mange skript som styrer prosessen. Disse skriftene starter enten med en "K" eller en "S". Skript som starter med K kjøres før skript som starter med S. Hvor disse skriptene plasseres, avgjør når de begynner å kjøre. Mellom disse katalogene fungerer systemtjenester sammen som en sunn maskin. Men noen ganger vil du starte eller drepe en prosess rent uten å bruke kill- eller killall-kommandoene. Det er her /etc/init.d kommer godt med!
    Hvis du bruker et Fedora-system, kan du finne denne katalogen: /etc/rc.d/init.d. Faktisk gjør den det samme uansett hvor du legger init.d.
     For å kunne bruke skript i init.d-katalogen trenger du root- eller sudo-privilegier. Hvert skript kjøres som en kommando, som er strukturert omtrent som følger:
     /etc/init.d/command-alternativ
     Comand er den faktiske kommandoen som kjøres, og alternativene kan være som følger:
Start
stopp
Lad om
Start på nytt
Kraft-omlading
       I de fleste tilfeller bruker du start-, stopp- og start-alternativene. For eksempel, hvis du vil slå av nettverket, kan du bruke en kommando som denne:
     
         /etc/init.d/networking stopp
        Et annet eksempel er at du endrer nettverksinnstillingene og må starte nettverket på nytt. Du kan bruke kommandoer som dette:
        /etc/init.d/networking-restart
        De mest brukte initialiseringsskriptene i init.d-katalogen er:
      
Nettverksbygging
Samba
Apache2
FTPD
SSHD
Duehus
MySQL
         Selvfølgelig kan du ha andre mer vanlige skript, avhengig av hvilket Linux-operativsystem du har installert.
2. Om /etc/rc.local
      rc.local er også et skript jeg bruker mye. Skriptet kjøres etter at systeminitialiseringsnivå-skriptet er kjørt, så det er trygt å legge til skriptet du vil kjøre etter at systemet har startet opp. Et vanlig tilfelle er at du kan legge til et NFS-mount/mount-skript til det. Du kan også legge til noen skriptkommandoer for feilsøking inne. For eksempel har jeg opplevd denne situasjonen hvor samba-tjenesten alltid ikke fungerer som den skal, og inspeksjonen viser at samba burde ha startet og kjørt under systemoppstart, det vil si at samba-daemon-konfigurasjonen sikrer at denne funksjonen utføres korrekt. I dette tilfellet gidder jeg vanligvis ikke å bruke så mye tid på å lete etter hvorfor, jeg trenger bare å legge til denne linjen i /etc/rc.local-skriptet:
          /etc/init.d/samba start
     På denne måten ble problemet med SAMBA-tjenesteunntak løst med suksess.

3. Sammendrag
         Linux er fleksibelt. På grunn av fleksibiliteten kan vi alltid finne mange forskjellige måter å løse det samme problemet på. Eksempelet med å starte en systemtjeneste er et godt eksempel. Med skriptet i /etc/init.d-katalogen, kombinert med det kraftige verktøyet /etc/rc.local, kan du være trygg på at tjenesten din vil fungere feilfritt.




Foregående:Asp.Net Vises i EF6.0 ikke funnet med fast navn "System.Data.SqlClient"...
Neste:MySQL-konfigurasjonsfilen my.cnf forklares i detalj
Ansvarsfraskrivelse:
All programvare, programmeringsmateriell eller artikler publisert av Code Farmer Network er kun for lærings- og forskningsformål; Innholdet ovenfor skal ikke brukes til kommersielle eller ulovlige formål, ellers skal brukerne bære alle konsekvenser. Informasjonen på dette nettstedet kommer fra Internett, og opphavsrettstvister har ingenting med dette nettstedet å gjøre. Du må fullstendig slette innholdet ovenfor fra datamaskinen din innen 24 timer etter nedlasting. Hvis du liker programmet, vennligst støtt ekte programvare, kjøp registrering, og få bedre ekte tjenester. Hvis det foreligger noen krenkelse, vennligst kontakt oss på e-post.

Mail To:help@itsvse.com