Skip to content

chkconfig — Linux / Unix-opdracht

20 de juli de 2021
linux 151619 5bf105a646e0fb005117ba99

Het bevel chkconfig biedt een eenvoudige opdrachtregeltool voor het onderhouden van de /etc/rc[0-6].d directoryhiërarchie door systeembeheerders te ontlasten van de taak om de talrijke symbolische links in die directory’s direct te manipuleren. De chkconfig-tool en het RC-bestandssysteem waarmee het werkt, maken deel uit van het traditionele Sysvinit-systeem. De meeste Linux-distributies vertrouwen op het nieuwere Systemd init-systeem. Tenzij je een distributie hebt gekozen die nog steeds op Sysvinit vertrouwt, is deze handleiding niet van toepassing op jouw systeem.

Korte inhoud

Chkconfig updates en vragen runlevel informatie voor systeemdiensten. De opdracht heeft een van de volgende vormen: chkconfig –list [name]
chkconfig –voeg naam toe
chkconfig –del naam
chkconfig [–level levels] naam
chkconfig [–level levels] naam

Deze implementatie van chkconfig is geïnspireerd op het chkconfig-commando dat aanwezig is in het IRIX-besturingssysteem. In plaats van configuratie-informatie buiten de /etc/rc[0-6].d-hiërarchie, deze versie beheert echter rechtstreeks de symbolische links in /etc/rc[0-6].d. Deze aanpak laat alle configuratie-informatie met betrekking tot welke services init start op één locatie.

Chkconfig heeft vijf verschillende functies: het toevoegen van nieuwe services voor beheer, het verwijderen van services uit het beheer, het weergeven van de huidige opstartinformatie voor services, het wijzigen van de opstartinformatie voor services en het controleren van de opstartstatus van een bepaalde service. Wanneer chkconfig draait zonder enige opties, het geeft gebruiksinformatie weer. Als alleen een servicenaam wordt gegeven, wordt gecontroleerd of de service is geconfigureerd om te worden gestart in het huidige runlevel. Als dit het geval is, retourneert chkconfig waar; anders wordt false geretourneerd. De –niveau vraagt ​​een alternatief runlevel op in plaats van het huidige. Als een van Aan, uit, of resetten is opgegeven na de servicenaam, wijzigt chkconfig de opstartinformatie voor de opgegeven service. De Aan en uit vlaggen zorgen ervoor dat de service respectievelijk wordt gestart of gestopt in de runlevels die worden gewijzigd. De reset-vlag stelt de opstartinformatie voor de service opnieuw in op wat is opgegeven in het init-script in kwestie. Standaard is de Aan en uit opties zijn alleen van invloed op runlevels 2, 3, 4 en 5, terwijl resetten heeft invloed op alle runlevels. De –niveau optie specificeert welke runlevels worden beïnvloed. Voor elke service heeft elk runlevel een startscript of een stopscript. Bij het wisselen van runlevels zal init een reeds gestarte service niet herstarten, en een service die niet actief is niet opnieuw stoppen.

Opties

De opdracht accepteert verschillende optionele vlaggen:

  • –niveau niveaus: Specificeert de uitvoeringsniveaus waartoe een bewerking behoort. Het wordt gegeven als een reeks getallen van 0 tot 7. Bijvoorbeeld, –niveau 35 specificeert runlevels 3 en 5.
  • –toevoegen naam: Deze optie voegt een nieuwe service toe voor beheer door: chkconfig. Wanneer een nieuwe dienst wordt toegevoegd, chkconfig zorgt ervoor dat de service een start- of een kill-item heeft in elk runlevel. Als een runlevel zo’n invoer mist, chkconfig maakt het juiste item zoals gespecificeerd door de standaardwaarden in het init-script. Merk op dat standaarditems in LSB-gescheiden ‘INIT INFO’-secties voorrang hebben op de standaard runlevels in het initscript.
  • –del naam: De service is verwijderd uit chkconfig management, en alle symbolische links in /etc/rc[0-6].d die erop betrekking hebben, worden verwijderd.
  • –lijst naam: Deze optie geeft een overzicht van alle services die: chkconfig weet, en of ze worden gestopt of gestart in elk runlevel. Als naam is opgegeven, informatie wordt alleen weergegeven over service naam.

Runlevel-bestanden

Elke service die beheersbaar moet zijn door: chkconfig moet twee of meer becommentarieerde regels worden toegevoegd aan zijn init.d script. De eerste regel vertelt: chkconfig op welke runlevels de service standaard moet worden gestart, evenals de prioriteitsniveaus voor starten en stoppen. Als de service standaard niet in runlevels moet worden gestart, moet een koppelteken worden gebruikt in plaats van de lijst met runlevels. De tweede regel bevat een beschrijving voor de service en kan worden uitgebreid over meerdere regels met backslash-vervolging. Random.init heeft bijvoorbeeld deze drie regels: # chkconfig: 2345 20 80
# description: Slaat systeementropiepool op en herstelt deze voor
# willekeurige nummergeneratie van hogere kwaliteit.

Dit bestand zegt dat het willekeurige script moet worden gestart in niveaus 2, 3, 4 en 5, dat de startprioriteit 20 moet zijn en dat de stopprioriteit 80 moet zijn.