Kaip iš systemctl
išrašyti visas įjungtas
paslaugas?
Žinau, kad paleidus systemctl
komandą savaime yra išvardijamos visos paslaugos, bet norėčiau gauti tik tas, kurios yra įjungtos.
systemctl list-unit-files | grep enabled
išvardys visus _įgalintus failus.
Jei norite sužinoti, kurie iš jų šiuo metu veikia, reikia systemctl | grep running
.
Naudokite tą, kurio ieškote. Įjungta nereiškia, kad ji veikia. O veikianti nereiškia, kad ji įjungta. Tai du skirtingi dalykai.
Įjungta reiškia, kad sistema paleis paslaugą kito įkrovimo metu. Taigi, jei įjungėte paslaugą, vis tiek turėsite ją paleisti rankiniu būdu arba perkrauti kompiuterį ir ji įsijungs.
Vykdoma reiškia, kad ji iš tikrųjų dabar veikia, bet jei ji nėra įjungta, iš naujo paleidus kompiuterį ji neįsijungs.
man systemctl
nurodo:
--state=
Argumentas turėtų būti kableliais atskirtų vienetų
ĮKROVIMO
,SUB
arbaAKTYVUS
būsenų sąrašas. Išvardijant vienetus, rodomi tik tie, kurie yra nurodytų būsenų. Naudokite--state=failed
, jei norite rodyti tik nepavykusius vienetus.
Paaiškinimas:
ĮKROVIMAS
: Ar vieneto apibrėžtis buvo tinkamai įkelta.
ACTIVE
: Tai aukšto lygio vieneto aktyvavimo būsena, t. y. SUB
apibendrinimas.
SUB
: Žemo lygio vieneto aktyvavimo būsena, kurios reikšmės priklauso nuo vieneto tipo.
Nors taip pat galite naudoti šį parametrą, kad parodytumėte tik įjungtus
vienetus su:
systemctl list-unit-files --state=enabled
Jei įrenginys yra įjungtas
, tai reiškia, kad sistema jį paleis paleidimo metu. Nors nustačius įjungta
, jis iš tikrųjų nepradedamas paleisti, todėl tai reikia padaryti rankiniu būdu arba perkrauti sistemą nustačius įjungta
.
Visų systemd
paslaugų, kurių state=active
ir sub=running
, sąrašas
systemctl list-units --type=service --state=running
Išvardyti visas systemd
paslaugas, kurios yra state=active
ir sub arba veikia, arba baigė darbą
systemctl list-units --type=service --state=active