systeemd

Systemd - Hoe het begint Uw systeem

Systemd - Hoe het begint Uw systeem
Systemd is ontwikkeld toen ontwikkelaars ontdekten dat het niet mogelijk was om het systeem parallel te starten. De oudere systemen doorlopen hun systeemopstartbestanden één voor één. Dit kan ervoor zorgen dat het opstarten stopt bij het wachten op bronnen die traag zijn. Een voorbeeld hiervan is wanneer een proces het netwerk moet laten draaien. Het gebruik van het netwerk is erg traag, andere bronnen hoeven niet te wachten. Dit probleem kan op andere manieren worden verholpen, maar met systemd wordt waar mogelijk alle opstart parallel gemaakt. Het resultaat zou een veel snellere opstart moeten zijn voor complexe systemen, waaronder uw desktopsysteem.

Systemd: vader van alle andere processen

Een Linux en elk ander *nix-systeem start altijd een proces dat de vader is van alle andere processen. Wanneer u Systemd gebruikt, is dat proces systemd, het proces wordt altijd 'init' genoemd, ongeacht het init-systeem. Zodra systemd draait, zal het de daemons starten die de subsystemen uitvoeren. De daemons bepalen welke bronnen je hebt en welke systemen open zijn. Uw aanmeldingsprompt is een service die wordt beheerd door systemd. Systemd start vele andere services en het koppelt ook al je schijven, inclusief de snap-mounts.

Hoe bepaal je wat begint??

Allereerst had het vroegste init-systeem runlevels die veel lezers zullen herkennen. Runlevel 1 was modus voor één gebruiker, 2 modus voor meerdere gebruikers zonder netwerk en 3-5 voor meerdere gebruikers en grafisch. Het runlevel instellen op 0 betekende stoppen en 6 betekende opnieuw opstarten. Ontwikkelaars van systemd vonden deze niveaus onduidelijk, dus veranderden ze in doelen. Doelen zijn niet precies hetzelfde, maar hebben een vergelijkbare functie. Wanneer een specifiek doel actief is, is er een specifieke verzameling eenheden actief. Later meer over eenheden.

Het "runlevel" instellen, een doel genoemd.

U kunt het doel tijdens het hardlopen wijzigen, u kunt bijvoorbeeld een terminal gebruiken om uw doel in te stellen op meerdere gebruikers. Dit zou uw GUI, X of Wayland stoppen, maar u en anderen laten inloggen met een tekstconsole. Gebruik de volgende opdracht:.

$ systemctl isolate multiuser.doelwit

Of, als u uw bureaublad wilt starten, gebruikt u in plaats daarvan de volgende opdracht:.

$ systemctl isolate graphical graphic.doelwit

Waar je echt in geïnteresseerd bent, is hoe je het juiste niveau kunt starten, je kunt op deze manier ontdekken wat je nu hebt.

$ systemctl get-default

Om de standaardinstelling te wijzigen:.

$ systemctl set-default grafisch.doelwit

Deze opdracht zorgt ervoor dat veel eenheden en services starten terwijl u uw computer opstart. Misschien wilt u echter een enkele service starten of stoppen.

STARTEN, stoppen, inschakelen en uitschakelen van een service.

Hier heb je de kans om te veranderen wat er gebeurt bij het opstarten en tijdens normaal gebruik. In tegenstelling tot de doelen zijn eenheden speciaal voor een bepaalde dienst. Om een ​​dienst te stoppen gebruik je 'systemctl stop', evengoed kun je 'start' en 'restart' gebruiken. Om een ​​service bij het opstarten te laten starten, gebruik je 'enable', om hem te stoppen 'disable'. Kies een service en start en stop deze terwijl deze actief is.

$ systemctl status kopjes.onderhoud

Deze opdracht toont de status van de service, het toont ook een lijst met acties die door het systeem zijn ondernomen met betrekking tot de service. Gebruik de onderstaande opdracht om de service te stoppen:.

$ systemctl stop cups.onderhoud

De service is nu gestopt voor uw huidige sessie. Om het te veranderen in niet starten bij de volgende keer opstarten, gebruik uitschakelen.

$ systemctl kopjes uitschakelen.onderhoud

Merk op dat u de service alleen kunt uitschakelen, dit heeft geen effect op uw huidige situatie. De service blijft gewoon draaien. Bij de volgende keer opstarten zal het de service echter niet starten.

Systemd bestuurt ook houders, apparaten, stopcontacten en meer. Eenheden zijn lager en gemakkelijker te begrijpen, als je eerder met Linux te maken hebt gehad. Je kunt deze ook zelf instellen, maar het meeste effect bij het opstarten is het bedienen van services.

Hoe voeg je je eigen scripts toe?

U kunt vrij eenvoudig uw eigen scripts toevoegen, de details die interessant zijn om te weten, zijn hoe u uw script of service afhankelijk maakt van anderen. Dit wordt netjes gedemonstreerd in dit wifi-resume-servicebestand.

[Eenheid]
Description=Herstart netwerkmanager bij hervatten
Na=opschorten.doelwit
Na = winterslaap.doelwit
Na=hybride slaap.doelwit
 
[Onderhoud]
Type=oneshot
ExecStart=/bin/systemctl herstart netwerkmanager.onderhoud
 
[Installeren]
WantedBy=opschorten.doelwit
WantedBy=slaapstand.doelwit
WantedBy=hybride-slaap.doelwit

Deze code creëert een service die één keer (oneshot) plaatsvindt na de drie doelen die in de code worden genoemd. De code die wordt uitgevoerd is in dit geval een enkele opdracht. Je kunt ExecStart net zo goed verwijzen naar een script naar keuze.

Conclusie

Je systeem veranderen, vooral hoe het opstart, kun je zelf doen, maar let op dat dit veel gevolgen heeft voor elke service, dus zorg ervoor dat je code stabiel is en snel kan worden uitgevoerd.

Cursor springt of beweegt willekeurig tijdens het typen in Windows 10
Als u merkt dat uw muiscursor vanzelf springt of beweegt, automatisch, willekeurig tijdens het typen op een Windows-laptop of -computer, dan kunnen en...
De scrollrichting van de muis en touchpads omkeren in Windows 10
Muis en Touchpads maken computergebruik niet alleen eenvoudig, maar ook efficiënter en minder tijdrovend. We kunnen ons een leven zonder deze apparate...
Hoe de muisaanwijzer en cursorgrootte, kleur en schema op Windows 10 te veranderen
De muisaanwijzer en cursor in Windows 10 zijn zeer belangrijke aspecten van het besturingssysteem. Dit geldt ook voor andere besturingssystemen, dus i...