Ukaz dump
Če vas nekdo prosi, da prikažete celotno konfiguracijo sistema, uporabite ukaz dump.
$ systemd --dump-configuration-itemsDatoteka zajema vse enote, ki jih imate v sistemu. Ko ima razvijalec to datoteko na voljo, bo oseba prebrala vse, kar imate, in poskušala najti težave, s katerimi se soočate. Končano in končano. Vendar tega članka ne bi brali, če bi vsemu dovolili, da stori nekdo drug. Poglejmo, kaj lahko storite s storitvijo naenkrat, in se naučimo nekaj trikov za filtriranje rezultatov.
Hierarhija systemd
Da bi postali učinkoviti, se morate zavedati, da imate znotraj systemd hierarhijo in lahko nastavite, da je vsaka storitev odvisna in / ali čaka na druge storitve. Različni načini, kako to storite, so razvidni iz servisnih datotek. Različni izkazi, ki jih imate, so "Wants", "Required", "Before" in "After". Za učinkovito analizo lahko z njimi ugotovite, ali vaša enota ne deluje zaradi odvisnosti. Nato lahko izsledite, kje je osnovni problem. Tu je primer tega.
$ systemctl seznam-odvisnosti - pred xpra.storitevIzpis prikazuje druge enote, ki xpra.storitev zanašajo na. V tem primeru so druge enote aktivne, zato se moramo osredotočiti na to, zakaj je enota sama pokvarjena. V primeru je manjkala datoteka s potrdilom.
Najpomembnejša uporaba tega je raziskati, ali v vaši storitvi manjkajo odvisnosti, uporabite ukaz na ta način.
$ systemctl seznam odvisnosti xringdRezultat je dolg seznam, ki je priročno organiziran v drevesu in prikazuje vse storitve kot zelene ali rdeče, če je kaj narobe. Odvisnosti si lahko ogledate tudi v datoteki storitev. Datoteko odprite s svojim najljubšim urejevalnikom ali uporabite systemctl, ki bo odprl datoteko s privzetim urejevalnikom.
Seznam aktivnih storitev
Ko želite raziskati sistem, boste morali vedeti, kako se enote prilegajo. Če želite to narediti, imate na voljo številne možnosti za tiskanje podrobnosti. Naštete lahko, kateri sistemi so zasedeni, neuspešni itd. Še pomembneje je, da lahko navedete, kako so sestavljeni, katera enota, storitev itd. trenutna enota je odvisna od. Glavni ukaz za to je systemctl, možnosti pa so koristne za zožitev vaše posebne težave.
Če želite pravilno uporabiti systemctl, natančno preglejte možnosti za ukaz. Obstajajo možnosti, da natančno izberete tisto, kar potrebujete, zlasti glede stanja storitev. Tu iščemo storitve, ki imajo težave.
$ systemctl list-unit-files --type = storitevTudi ta seznam je dolg in po njem se morate pomakniti po vseh storitvah, da najdete tisto, kar iščete. Z nekaj več parametri lahko filtrirate za določenega ali tiste, ki so onemogočeni. Spodnji ukaz bo našel vse enote, ki so prikrite.
$ systemctl list-unit-files --type = service --state = maskedMaskirane storitve so blokirane, tako da jih druge storitve ne morejo zagnati, tudi če jih potrebuje druga storitev. S tem lahko zagotovite, da ne delujejo nasprotujoče si storitve. Ko odstranite paket, upravitelj paketov običajno prikrije številne storitve. Datoteko storitve lahko po odstranitvi storitve popolnoma odstranite. Možno je tudi, da uniči veliko storitev, ki jih želite, zato se prepričajte, da veste, ali potrebujete zakrite storitve.
Nekatere storitve so prikrite s procesi in ne želite vedno, da bi bile storitve prikrite. Ko se to zgodi z vašim sistemom, morate najprej odstraniti masko s pomočjo systemctl. Vendar to ni vedno mogoče, zato morate povezavo odstraniti v ustrezni imenik. V večini sistemov bo to lib / systemd / system. Preden to storite, preverite, ali je datoteka dejansko povezava do / dev / null.
$ ls -l lib / systemd / system> | grep null
Ko ste prepričani, da želite odstraniti to povezavo, jo odstranite z rm ali prekini povezavo.
$ rm / lib / systemd / system / udisks2.storitevZdaj, ko veste, kako to storiti, slišite to opozorilo: velikokrat je treba imeti to povezavo. Za primer vzemite lvm2, prikrit je pred delovanjem, tako da ne bo motil novega sistema, kjer ima lvm2 toliko majhnih storitev. Glej rezultat:
$ systemctl status lvm2 *Odstranitev povezave lahko povzroči opustošenje v vašem sistemu, ker jo sam lvm2 potrebuje, da se izogne konfliktom. To je le primer, zato bodite pozorni, preden nadaljujete.
Zaključek
Ko želite našteti storitve v sistemu systemd, morate najprej razmisliti o tem, kaj iščete v svojem prizadevanju. Ali iščete storitev, ki jo potrebujete, ali vidite, da imate preveč storitev. Kakor koli že, poizvedbo morate prilagoditi svojim posebnim potrebam. Systemd je sprva videti zmedeno, a če pogledate od blizu, vse uporablja enostaven način za poenotenje zagona, tako da se lahko storitve zaženejo vzporedno, kjer sistem to potrebuje, pri čemer lahko vsaka storitev čaka na določeno storitev, od katere je odvisna.