Elk modern besturingssysteem heeft een soort van opstartroutine. Zelfs DOS had de oude AUTOEXEC.BAT en CONFIG.SYS. Het opstartsysteem bepaalt wat er wordt gestart bij het opstarten van het systeem, onder welke omstandigheden en in welke volgorde. DOS deed de dingen op de eenvoudige manier, met een bestand dat werd gelezen op elke boot die commando's zou uitvoeren in elke volgorde waarin ze in het bestand werden geplaatst. Het is inderdaad eenvoudig, maar net als veel van DOS, niet krachtig genoeg of flexibel genoeg om het tegenwoordig te knippen.

Bijna alle Linux-varianten gebruiken een opstartroutering gemodelleerd naar die die is gevonden in UNIX System V. Ubuntu maakt gebruik van een systeem dat Upstart heet en bedoeld is om achterwaarts compatibel te zijn met het normale SysV Init. Deze draaien allemaal op basis van het concept van runlevels . Een runlevel is gewoon een set instructies voor het opstarten / afsluiten. Als je Linux is ingesteld om bijvoorbeeld standaard runlevel 5 te gebruiken, dan zal je elke keer dat je opstart alle opstartscripts uitvoeren voor runlevel 5. Het volgende voorbeeld laat zien hoe de runlevels zijn ingesteld op een standaard Debian installatie.

  • 0 - Halt
  • 1 - Eén gebruiker
  • 2 - Volledige multi-gebruiker
  • 3 - Volledige multi-gebruiker
  • 4 - Volledige multi-gebruiker
  • 5 - Volledige multi-gebruiker
  • 6 - Herstart

Deze kunnen worden aangepast door de makers van elke distro, dus sommige kunnen standaard verschillende runlevels gebruiken dan andere. Debian staat standaard op runlevel 2.

Als u wilt weten wat uw standaard runlevel is, opent u een console en voert u het volgende in:

cat / etc / inittab | grep initdefault

Of open gewoon / etc / inittab in je teksteditor naar keuze en kijk naar de top voor de regel "initdefault".

Nu we weten welk runlevel ons systeem gebruikt, kunnen we beginnen met het trimmen van de onnodige onderdelen. Elk runlevel heeft een directory op het systeem met alle opstartscripts. Op dit moment maken we ons alleen zorgen over de scripts voor runlevel 2. Open je bestandsbeheerder of opdrachtprompt naar /etc/rc2.d . In die map staan ​​alle links naar uw opstartprogramma's voor dat runlevel.

U ziet dat elk begint met een letter (S of K) gevolgd door een tweecijferig nummer (00-99). Die scripts die beginnen met S worden gestart wanneer dat runlevel wordt ingevoerd, degenen die beginnen met K worden gedood wanneer het runlevel wordt ingevoerd. De cijfers vertegenwoordigen de volgorde om die scripts uit te voeren. S05Foo zou bijvoorbeeld vóór S80Bar beginnen.

De kans is groot dat je sommige items uit die directory niet zult herkennen. Sommigen van hen zijn vrij duidelijk als "netwerk-manager" terwijl anderen meer cryptisch zijn. Als u niet zeker weet wat u veilig kunt verwijderen, zoekt u naar een manpagina voor dat item. Als u bijvoorbeeld niet zeker weet wat "acpid" is, voert u dit in

man acpid

naar uw terminal. Als de mens geen toegang heeft, is er altijd Google.

Nu, om te beginnen met het verwijderen van onnodige items. Je zou gewoon de scripts in de rc2.d map kunnen verwijderen (ze zijn eigenlijk gewoon koppelingen naar de echte scripts) maar ik zou die methode niet aanbevelen. Het zou werken omdat het zou voorkomen dat het script wordt gestart bij het opstarten, maar het kan geopende "K" -scripts openlaten in andere runlevels, en het maakt het moeilijker om dat item te herstellen als je het later nodig hebt. Zoals gewoonlijk heeft Debian een betere manier.

De opdracht update-rc.d kan worden gebruikt om opstartitems netjes toe te voegen en te verwijderen van uw runlevel. Ik heb geen Bluetooth-functie op deze computer, dus ik ga het Bluetooth-opstartitem verwijderen.

update-rc.d -f bluetooth verwijderen

Dezelfde methode kan worden gebruikt voor elk item op uw standaard runlevel dat u wilt verwijderen. Laat het daar bij twijfel.

Als u merkt dat u dat opstartitem later wilt herstellen, kunt u dezelfde tool gebruiken om services aan runlevels toe te voegen. Als ik later Bluetooth-functionaliteit toevoeg aan deze computer, kan ik die service herstellen met

update-rc.d bluetooth-standaardinstellingen

Nadat u alle onnodige items voor uw startup hebt verwijderd, zult u merken dat uw machine veel sneller opstart en minder systeembronnen in beslag neemt.

Er zijn andere methoden om uw opstartroutine te beheren, sommige bevatten grafische hulpprogramma's om het eenvoudiger te maken. Als u een grafische tool gebruikt om uw startup te beheren, laat dan een reactie achter en vertel me welke en wat u er leuk aan vindt.