Усе асноўныя дыстрыбутывы Linux выкарыстоўваюць Systemd, сістэму ініцыявання, якая працуе на аснове ўключэння і адключэння «службовых» файлаў. Калі вы спрабуеце пералічыць гэтыя службовыя файлы, але не ведаеце, як гэта зрабіць, вам трэба будзе выкарыстоўваць каманду systemctl.
У гэтым кіраўніцтве мы разгледзім розныя спосабы пералічэння службовых файлаў Systemd у Linux. Каб пачаць, пераканайцеся, што вы выкарыстоўваеце АС Linux з Systemd. Затым адкрыйце акно тэрмінала і прытрымлівайцеся далей.
Змест
Выкарыстоўвайце Systemd, каб пералічыць актыўныя службы
Калі вы часта выкарыстоўваеце Systemd, у нейкі момант вы можаце даведацца, якія службы актыўныя падчас загрузкі сістэмы Linux. Пералік актыўных сэрвісаў вельмі просты, і вы можаце зрабіць гэта з дапамогай каманды systemctl –type=service systemctl –type=service –state=running.
Гэтая каманда пры выкананні пакажа табліцу ўсіх сэрвісаў, калі яны актыўныя, а таксама кароткае апісанне. Каб запусціць гэтую праграму, адкрыйце акно тэрмінала. Пасля таго, як акно тэрмінала адкрыецца, выканайце каманду ніжэй.
systemctl --type=service --state=running
Калі вы спрабуеце адфільтраваць усе актыўныя службы для пэўнай службы, прагляд гэтай вялікай табліцы можа быць даволі стомным. На шчасце, каманду systemctl можна аб’яднаць з камандай grep у якасці механізму фільтрацыі.
Напрыклад, каб праверыць, ці працуе і загружаецца «snapd.service», вы можаце запусціць systemctl –type=service –state=running | grep ‘snapd’, і ў вывадзе будзе паказвацца толькі служба Snapd, а не ўся табліца.
systemctl --type=service --state=running | grep 'snapd'
Калі вы хочаце захаваць вынік табліцы ў тэкставым файле на потым, выкарыстоўвайце наступную каманду.
systemctl --type=service --state=runningrunning > ~/active-services.txt
Каб праглядзець тэкставы файл у любы час, выканайце каманду cat ніжэй.
cat ~/active-services.txt
Выкарыстоўвайце Systemd для спісу неактыўных паслуг
Пералік актыўных сэрвісаў Systemd карысны, але як наконт неактыўных? Так, іх таксама можна пералічыць. Вось як. Спачатку адкрыйце акно тэрмінала.
Як толькі акно тэрмінала будзе адкрыта і гатова да выкарыстання, выканайце каманду systemctl –type=service, але ў слоце –state= пастаўце «неактыўны», а не «запушчаны». Робячы гэта, вы можаце ўбачыць, якія службы Systemd неактыўныя ў вашай сістэме Linux.
systemctl --type=service --state=inactive
Як і ў выпадку з актыўнымі службамі, Systemd створыць прыгожую, акуратную табліцу і пакажа вам, якія службы Systemd неактыўныя, мёртвыя і не выкарыстоўваюцца. Калі вы хочаце адфільтраваць гэтую табліцу, каб даведацца, ці не працуе пэўны сэрвіс, вы можаце аб’яднаць яго з камандай grep.
Напрыклад, каб вызначыць, ці неактыўны файл «updatedb.service», вы можаце аб’яднаць systemctl –type=service –state=inactive з камандай grep ніжэй, каб знайсці яго ў табліцы.
systemctl --type=service --state=inactive | grep 'updatedb.service'
Калі вам трэба захаваць усе неактыўныя файлы службы Systemd у тэкставы файл для далейшага чытання, выкарыстоўвайце наступную каманду.
systemctl --type=service --state=inactive > ~/inactive-services.txt
Каб прачытаць гэты тэкставы файл прама з акна тэрмінала, выкарыстоўвайце каманду cat.
cat ~/inactive-services.txt
Выкарыстоўвайце Systemd, каб пералічыць усе ўсталяваныя службы
Калі вам трэба ўбачыць усе ўсталяваныя службы Systemd, незалежна ад таго, актыўныя яны ці не, вам трэба будзе выкарыстоўваць каманду systemctl list-unit-files –type=service і выключыць пераключальнік –state каманднага радка. Выключыўшы -state, Systemd зможа з лёгкасцю пералічыць кожны сэрвісны файл на вашым кампутары.
systemctl list-unit-files --type=service
Пасля выканання вышэйзгаданай каманды Systemd раздрукуе табліцу з кожным сэрвісным файлам у сістэме. Адсюль вы можаце сартаваць табліцу, каб знайсці патрэбны вам сэрвісны файл.
Калі вы не можаце знайсці пэўны сэрвісны файл, вы можаце аб’яднаць каманду systemctl list-unit-files –type=service з камандай grep, каб выкарыстоўваць фільтр. Выкарыстоўваючы каманду ніжэй, адфільтруйце табліцу, каб знайсці патрэбны вам сэрвісны файл.
systemctl list-unit-files --type=service | grep 'my-service'
Хочаце экспартаваць усе сэрвісы Systemd у тэкставы файл для далейшага чытання? Выканайце наступную каманду.
systemctl list-unit-files --type=service > ~/service-files.txt
Вы можаце праглядзець тэкставы файл у любы час з дапамогай каманды cat ніжэй.
cat ~/service-files.txt
Выкарыстоўвайце Systemd для адлюстравання стану асобнай службы
Хоць карысна ведаць, як пералічыць усе службы Systemd, актыўныя і неактыўныя, таксама карысна ведаць, як пералічыць стан паслуг паасобку. Вось як гэта зрабіць.
Спачатку адкрыйце акно тэрмінала. Адкрыўшы акно тэрмінала, выкарыстоўвайце каманду systemctl status для пэўнай службы. Напрыклад, каб знайсці статус «NetworkManager.service», выконваецца наступная каманда.
systemctl status NetworkManager
Калі вы хочаце экспартаваць вынікі каманды status у тэкставы файл для наступнага чытання, вы можаце ўвесці каманду ніжэй.
systemctl status MyService > ~/MyService-status.txt
Каб праглядзець гэты файл, выканайце наступную каманду cat.
cat ~/MyService-status.txt