systemd

Systemd - kā tas sāk jūsu sistēmu

Systemd - kā tas sāk jūsu sistēmu
Systemd tika izstrādāta, kad izstrādātāji atklāja, ka sistēmas paralēla iedarbināšana nav iespējama. Vecākās sistēmas pa vienam iziet cauri to sistēmas startēšanas failiem. Tas var izraisīt sāknēšanas apstāšanos, gaidot lēnus resursus. Viens piemērs ir gadījums, kad procesam ir jādarbojas tīklam. Tīkla izmantošana notiek ļoti lēni, citiem resursiem nevajadzētu gaidīt. Šo problēmu var mazināt citos veidos, taču, izmantojot sistēmu system, visas palaišanas iespējas tiek veiktas paralēli, ja iespējams. Rezultātā vajadzētu būt daudz ātrākai sarežģītu sistēmu palaišanai, kas ietver jūsu darbvirsmas sistēmu.

Systemd: visu citu procesu tēvs

Linux un jebkura cita * nix sistēma vienmēr sāk procesu, kas ir visu pārējo procesu pamats. Lietojot Systemd, šis process ir systemd, procesu vienmēr sauc par 'init' neatkarīgi no init sistēmas. Kad sistēma systemd darbojas, tā sāks dēmonus, kas vada apakšsistēmas. Dēmoni kontrolē, kādi resursi jums ir un kādas sistēmas ir atvērtas. Jūsu pieteikšanās uzvedne ir pakalpojums, kuru pārvalda systemd. Systemd palaiž daudzus citus pakalpojumus, un tajā tiek uzstādīti arī visi jūsu diski, ieskaitot snap stiprinājumus.

Kā jūs kontrolējat iesākto?

Pirmkārt, agrākajai init sistēmai bija darbības līmeņi, kurus daudzi lasītāji atpazīs. 1. darbības līmenis bija viena lietotāja režīms, 2 daudzlietotāju režīms bez tīkla izveidošanas un 3-5 daudzlietotāju un grafiskais režīms. Darbības līmeņa iestatīšana uz 0 nozīmēja apturēšanu un 6 - atsāknēšanu. Systemd izstrādātāji uzskatīja, ka šie līmeņi ir neskaidri, tāpēc to mainīja, lai sauktu par mērķiem. Mērķi nav pilnīgi vienādi, bet tiem ir līdzīga funkcija. Kad darbojas noteikts mērķis, darbojas noteikta vienību kolekcija. Vēlāk par vienībām vēlāk.

“Darbības līmeņa” iestatīšana, ko sauc par mērķi.

Darbības laikā varat mainīt mērķi, piemēram, varat izmantot termināli, lai iestatītu mērķi vairākiem lietotājiem. Tas apturētu jūsu GUI, X vai Wayland, bet ļautu jums un citiem pieteikties, izmantojot teksta konsoli. Izmantojiet šādu komandu.

$ systemctl izolēt daudzlietotāju.mērķis

Vai arī, ja vēlaties sākt darbvirsmu, tā vietā izmantojiet šo komandu.

$ systemctl izolēt grafiski.mērķis

Kas jūs patiešām interesē, ir tas, kā sākt pareizo līmeni, šādā veidā varat uzzināt, kas jums šobrīd ir.

$ systemctl get-default

Lai mainītu noklusējumu, iestatiet to.

$ systemctl set-default grafika.mērķis

Šī komanda faktiski liek daudzām vienībām un pakalpojumiem startēt, palaižot datoru. Varat sākt vai pārtraukt atsevišķu pakalpojumu.

Pakalpojuma UZSĀKŠANA, apturēšana, iespējošana un atspējošana.

Šeit jums ir iespēja mainīt to, kas notiek sāknēšanas laikā un normālas darbības laikā. Atšķirībā no mērķiem, vienības ir īpašas konkrētam pakalpojumam. Lai apturētu pakalpojumu, kuru izmantojat "systemctl stop", tāpat varat izmantot "start" un "restart". Lai pakalpojums sāktu sāknēšanas laikā, izmantojiet “iespējot”, lai apturētu “atspējot”. Izvēlieties pakalpojumu un sāciet un apturiet to, kamēr tas darbojas.

$ systemctl statusa kausi.apkalpošana

Šī komanda parāda pakalpojuma statusu, kā arī parāda darbību sarakstu, ko sistēma veikusi saistībā ar pakalpojumu. Lai apturētu pakalpojumu, izmantojiet zemāk esošo komandu.

$ systemctl stop kausi.apkalpošana

Jūsu pašreizējās sesijas laikā pakalpojums tagad ir apturēts. Lai mainītu to uz nesākšanos nākamajā sāknēšanas reizē, izmantojiet atspējošanu.

$ systemctl atspējojiet kausus.apkalpošana

Ievērojiet, ka jūs varat atspējot tikai pakalpojumu, tas neietekmēs jūsu pašreizējo situāciju. Pakalpojums turpina darboties. Nākamajā sāknēšanas reizē pakalpojums tomēr netiks palaists.

Systemd kontrolē arī stiprinājumus, ierīces, kontaktligzdas un daudz ko citu. Vienības atrodas zemāk un ir vieglāk saprotamas, ja iepriekš esat nodarbojies ar Linux. Varat arī tos pats iestatīt, bet visvairāk iedarbināšana uz sāknēšanu ir pakalpojumu vadība.

Kā jūs pievienojat savus skriptus?

Jūs varat pievienot savus skriptus diezgan viegli. Sīkāka informācija, kas ir interesanta, ir tas, kā jūs padarīt savu skriptu vai pakalpojumu atkarīgu no citiem. Tas ir lieliski parādīts šajā wifi atsākšanas servisa failā.

[Vienība]
Apraksts = Restartējot restartējiet tīkla pārvaldnieku
Pēc = apturēt.mērķis
Pēc = pārziemot.mērķis
Pēc = hibrīds-miegs.mērķis
 
[Apkalpošana]
Tips = onehot
ExecStart = / bin / systemctl restartējiet tīkla pārvaldnieku.apkalpošana
 
[Uzstādīt]
WantedBy = apturēt.mērķis
WantedBy = pārziemot.mērķis
WantedBy = hibrīds miegs.mērķis

Šis kods izveido pakalpojumu, kas notiek vienreiz (onehot) pēc trim kodā minētajiem mērķiem. Izpildītais kods šajā gadījumā ir viena komanda. Tikpat labi jūs varat norādīt ExecStart uz izvēlēto skriptu.

Secinājums

Mainot sistēmu, it īpaši to, kā tā sāk darboties, varat izdarīt pats, taču uzmanieties, ka tam ir daudz seku katram pakalpojumam, tāpēc pārliecinieties, vai kods ir stabils un ātri izpildāms.

Kā izmantot Xdotool, lai stimulētu peles klikšķus un taustiņsitienus Linux
Xdotool ir bezmaksas un atvērtā koda komandrindas rīks peles klikšķu un taustiņu simulāciju simulēšanai. Šajā rakstā būs īss ceļvedis par xdotool izma...
5 labākie ergonomiskie datoru peles izstrādājumi Linux
Vai ilgstoša datora lietošana izraisa sāpes plaukstas locītavā vai pirkstos? Vai jūs ciešat no stīvām locītavām un jums pastāvīgi ir jāspiež rokas? Va...
How to Change Mouse and Touchpad Settings Using Xinput in Linux
Most Linux distributions ship with “libinput” library by default to handle input events on a system. It can process input events on both Wayland and X...