Denne artikel er en spejling af maskinoversættelse, klik venligst her for at springe til den oprindelige artikel.

Udsigt: 11617|Svar: 0

[linux] Forstå /etc/init.d-mappen og /etc/rc.local-scripts på Linux-systemer

[Kopier link]
Opslået på 13/11/2017 11.53.19 | | |
Den engelske version af denne artikel stammer fra: http://www.ghacks.net/2009/04/04/get-to-know-linux-the-etcinitd-directory/

1. Om /etc/init.d
     Hvis du nogensinde har brugt et Linux-system, har du hørt om init.d-mappen. Hvad er dette katalog egentlig til? Det gør kun én ting i sidste ende, men det er ikke en triviel ting, det gøres for hele systemet, så det er meget vigtigt. Directory init.d indeholder mange start- og stopscripts for forskellige tjenester i systemet. Den styrer alt fra acpid til x11-common. Selvfølgelig er init.d langt fra så enkelt. (Oversætterens note: ACPID er en ny standard for strømstyring til Linux-operativsystemer; X11 kaldes også X Window system, X Window system (X11 eller X) er et vinduessystem med bitmap-visning. Det er et standardværktøj og protokol til at bygge grafiske brugergrænseflader på Unix og Unix-lignende operativsystemer samt OpenVMS, og kan bruges til næsten alle moderne operativsystemer.
    Når du kigger i /etc-mappen, vil du finde mange mapper, der findes i form af rc#.d (hvor # repræsenterer et angivet initialiseringsniveau, intervallet er 0~6). Under disse kataloger er der mange manuskripter, der styrer processen. Disse skrifttyper starter enten med et "K" eller et "S". Scripts, der starter med K, kører før scripts, der starter med S. Hvor disse scripts placeres, afgør, hvornår de begynder at køre. Mellem disse mapper arbejder systemtjenester sammen som en sund maskine. Men nogle gange vil du starte eller dræbe en proces rent uden at bruge dræb- eller dræbskommandoerne. Det er her, /etc/init.d kommer til nytte!
    Hvis du bruger et Fedora-system, kan du finde denne mappe: /etc/rc.d/init.d. Faktisk gør den det samme, uanset hvor du sætter init.d.
     For at kunne bruge scripts i init.d-mappen skal du have root- eller sudo-rettigheder. Hvert script vil blive kørt som en kommando, som er struktureret omtrent som følger:
     /etc/init.d/command-mulighed
     Comand er den faktiske kommando, der kører, og mulighederne kan være som følger:
Start
Stop
Genindlæsning
Genstart
Kraftgenladning
       I de fleste tilfælde bruger du start-, stop- og genstart-mulighederne. For eksempel, hvis du vil slukke netværket, kan du bruge en kommando som denne:
     
         /etc/init.d/networking stop
        Et andet eksempel er, at du ændrer dine netværksindstillinger og skal genstarte netværket. Du kan bruge kommandoer som disse:
        /etc/init.d/netværksgenstart
        De almindeligt anvendte initialiseringsscripts i init.d-mappen er:
      
Netværk
samba
apache2
FTPD
sshd
Duehus
MySQL
         Selvfølgelig kan du have andre, mere almindeligt brugte scripts, afhængigt af hvilket Linux-operativsystem du har installeret.
2. Om /etc/rc.local
      rc.local er også et script, jeg bruger meget. Scriptet eksekveres, efter at systeminitialiseringsniveau-scriptet er kørt, så det er sikkert at tilføje det script, du vil køre, efter systemet er startet op. Et almindeligt tilfælde er, at du kan tilføje et NFS mount/mount-script til det. Du kan også tilføje nogle script-kommandoer til fejlfinding indenfor. For eksempel har jeg oplevet denne situation, hvor samba-tjenesten altid ikke fungerer korrekt, og inspektionen viser, at samba burde være startet og udført under systemopstart, det vil sige, at samba-daemon-konfigurationen sikrer, at denne funktion udføres korrekt. I dette tilfælde gider jeg som regel ikke bruge meget tid på at undersøge hvorfor, jeg skal bare tilføje denne linje til /etc/rc.local-scriptet:
          /etc/init.d/samba start
     På denne måde blev problemet med SAMBA-serviceundtagelsen løst med succes.

3. Resumé
         Linux er fleksibelt. På grund af dets fleksibilitet kan vi altid finde mange forskellige måder at løse det samme problem på. Eksemplet med at starte en systemtjeneste er et godt eksempel. Med scriptet i /etc/init.d-mappen, kombineret med det kraftfulde værktøj /etc/rc.local, kan du være sikker på, at din service vil køre fejlfrit.




Tidligere:Asp.Net Vises i EF6.0 ikke fundet med fast navn "System.Data.SqlClient"...
Næste:MySQL-konfigurationsfilen my.cnf forklares i detaljer
Ansvarsfraskrivelse:
Al software, programmeringsmaterialer eller artikler udgivet af Code Farmer Network er kun til lærings- og forskningsformål; Ovenstående indhold må ikke bruges til kommercielle eller ulovlige formål, ellers skal brugerne bære alle konsekvenser. Oplysningerne på dette site kommer fra internettet, og ophavsretstvister har intet med dette site at gøre. Du skal slette ovenstående indhold fuldstændigt fra din computer inden for 24 timer efter download. Hvis du kan lide programmet, så understøt venligst ægte software, køb registrering og få bedre ægte tjenester. Hvis der er nogen overtrædelse, bedes du kontakte os via e-mail.

Mail To:help@itsvse.com