GNU/Linux >> Znalost Linux >  >> Ubuntu

Jak spravovat služby Linux pomocí příkazu systemctl

Linux je volitelný multitaskingový systém jako téměř každý v dnešní době. A aby to byl skutečný zážitek, mnoho aplikací se obsluhuje na pozadí prostřednictvím služeb. V různých časech a za různých okolností musí uživatel systému tyto služby spustit, zastavit nebo restartovat. Proto se v tomto příspěvku dozvíte, jak zacházet se službami v Linuxu pomocí příkazu systemctl.

V tomto příspěvku vám také ukážeme mnoho nástrojů, které příkaz umí. Kromě toho si vysvětlíme, co je to služba a jak jsme se dostali k systemctl.

Jaký je rozdíl mezi příkazem systemd a systemctl?

Než se podíváte na používání systemctl příkaz, je dobré zjistit rozdíl mezi příkazem a systemd .

S hlavním cílem optimalizace správy a načítání linuxových služeb, systemd byl narozen. Nahrazuje starý Sysvinit ne bez dávky kontroverze.

Systemd se skládá ze série démonů a skriptů kompatibilních se SysV a LSB. Umožňuje také spouštění démonů na vyžádání, monitorování procesů s využitím linuxových řídicích skupin.

Na druhé straně systemctl je příkaz používaný ke správě systémových služeb. Funguje jako jakési rozhraní pro systemd . Teď už ano. Budeme používat systemctl .

Správa služeb v systému Linux pomocí příkazu systemctl

Pokud používáte moderní distribuci Linuxu, pak jste nainstalovali a spustili systemd a tedy systemctl příkaz.

Samotný příkaz je velmi snadno použitelný. Základní syntaxe je tedy následující.

systemctl [OPTIONS...] {COMMAND} ...

Jako většina příkazů v Linuxu má možnosti, které upravují chování systému. Pokud zobrazíte systemctl nápovědy, uvidíte spoustu dostupných možností a příkazů.

:~$ systemctl --help

Je to proto, že ačkoli systemctl se používá ke správě systémových služeb, umožňuje také provádět další operace, jako je vypínání nebo restartování počítače.

Vy však budete studovat správu služeb s systemctl prostřednictvím situací.

1. Vyjmenujte služby systému

Nejprve musíte vzít v úvahu, že příkaz systemctl musí být použit jako superuživatel. Nebo alespoň, že váš uživatel může používat sudo . Poté otevřete terminál a zobrazte seznam systémových služeb pod systemd , spusťte následující příkaz

:~$ sudo systemctl

Jak můžete vidět z výstupu na obrazovce, je to trochu těžkopádné. Stále však můžete vizualizovat služby systému.

Je však možné přidat dílčí příkaz list-unit a filtr pro zlepšení prezentace výsledků.

:~$ sudo systemctl list-units --type=service --all

Tento obrázek představuje jasnější výsledky. Nejdůležitější sloupce jsou zatížení, aktivní a podsloupce, kde se zobrazuje, zda je v systému aktivní a zda běží.

Pokud chcete zobrazit pouze ty, které jsou spuštěny, stačí upravit předchozí příkaz pro tento:

:~$ sudo systemctl list-units --type=service --state=running

2. Spusťte, zastavte a restartujte služby pomocí příkazu systemctl

Nyní, když víte, jaké služby jsou ve vašem systému, můžete se rozhodnout je spustit, pokud jsou zastaveny, nebo zastavit, pokud běží.

Chcete-li spustit službu, použijte tento příkaz:

:~$ sudo systemctl start [service]

Nahraďte službu názvem služby. V případě MySQL by příkaz vypadal následovně:

:~$ sudo systemctl start mysql

Naopak, pokud ji chcete zastavit, použijte dílčí příkaz stop a název služby.

:~$ sudo systemctl stop [service]

Podle příkladu MySQL by to vypadalo takto:

:~$ sudo systemctl stop mysql

Na druhou stranu jsou chvíle, kdy musíte provést změny v konfiguraci některé služby. Aby se tyto změny projevily, musíte jej restartovat.

:~$ sudo systemctl restart [service]

Službu lze také znovu načíst. V tomto případě službu překonfigurujte pouze částečně. Dílčí příkaz je „reload“.

:~$ sudo systemctl reload [service]

Chcete-li jej úplně restartovat, musíte použít volbu restartovat.

3. Povolte a zakažte, aby se služba spustila nebo nespustila při spouštění systému

Když je pro provoz našeho serveru nebo některé z těchto aplikací velmi důležitá služba třetí strany, je vhodné požádat systemd, aby ji spustil společně se systémem.

Chcete-li to provést, postupujte podle následující syntaxe:

:~$ sudo systemctl enable [service]

Takže nahraďte [service] názvem služby, kterou potřebujete.

Chcete-li jej zakázat, použijte dílčí příkaz disable.

:~$ sudo systemctl disable [service]

Tímto způsobem můžete nastavit, které služby se budou spouštět automaticky a které ne.

4. Maskování a odmaskování služby pomocí Systemctl

Pokud chcete, aby byla služba zakázána, ale nelze ji povolit automaticky nebo ručně, měla by být maskována. Nebojte se, že jej lze vždy odmaskovat a znovu aktivovat.

K maskování služby tedy použijte následující příkaz

:~$ sudo systemctl mask [service]

A pro obrácení předchozího příkazu:

:~$ sudo systemctl unmask [service]

To přidává další vrstvu zabezpečení pro správu serveru. Ideální pro sdílení práce. Protože chcete-li spustit nebo povolit maskovanou službu, musíte ji nejprve odmaskovat.

5. Zkontrolujte stav služby pomocí příkazu systemctl

Často je užitečné vědět, jaký je stav služby. Toto slouží k odhalení možných chyb.

Chcete-li to provést, použijte následující příkaz:

:~$ sudo systemctl status [service]

Pokud je služba spuštěna, uvidíte obrázek podobný tomuto.

Pokud ne, uvidíte něco takového.

To je velmi užitečné, abyste věděli, zda je spuštěna určitá služba.

Závěr

Správa služeb z terminálu může být trochu komplikovaná, ale není. A to pomáhá, aby byl náš systém spravován uživatelem správně.

V tomto příspěvku jste použili příkaz systemctl pro základní správu těchto služeb. Nicméně příklady, které jste právě pozorovali, jsou nejběžnější případy, takže budou stačit.


Ubuntu
  1. Jak používat příkaz su v Linuxu s příklady

  2. Jak spravovat služby Systemd pomocí Systemctl v systému Linux

  3. Jak používat příkaz Systemctl ke správě služeb Systemd

  1. Jak používat příkaz sudo v Linuxu

  2. Jak používat w Command v Linuxu s příklady

  3. Jak používat příkaz k hodinkám Linux s příklady

  1. Jak používat Linux na Command

  2. Jak používat příkaz locate v Linuxu

  3. Jak používat příkaz less v Linuxu s příklady