Come utilizzare SystemD in Debian

Come utilizzare SystemD in Debian
La radice nella struttura dell'albero dei processi del kernel Linux è sistema. Di conseguenza, può essere utilizzato per condurre attività altamente utili come il controllo automatico dei servizi e la macchina, eseguindoli al boot. Esamineremo tutte le attività chiave che si possono svolgere utilizzando SystemD. Inizieremo con un'introduzione e poi passeremo all'implementazione. Iniziamo!

Cosa è SystemD?

SystemD Software Suite fornisce le basi per il sistema operativo Debian. Il processo radice nell'albero del processo di Linux è responsabile della gestione di altri processi e applicazioni e viene utilizzato per controllare le applicazioni in modalità a livello di kernel. Ad esempio, eseguire Docker come servizio.

Come utilizzare SystemD per varie attività

Elenca file unità

SystemD impiega "unità" per gestire tutti i servizi di sistema e i processi. Le unità SystemD usano i file di configurazione per governare le loro diverse attività. I file di configurazione dell'unità sono classificati in tre tipi:

"File di configurazione dell'unità predefinita" con file di configurazione contenuti nella directory "/usr/lib/systemd/system"

"File di configurazione dell'unità specifici del sistema" con file di configurazione dell'unità specifici del sistema contenuti in "/etc/systemd/system"
"
"File di configurazione dell'unità di runtime" "con i file di configurazione trovati nella directory" "/run/systemd/system"

Di seguito è riportato il comando per elencare i file unità insieme al loro output

$ SystemCtl List-Unit-Files

Produzione

Stato di file unità
Proc-Sys-fs-binfmt_misc.Automount Static
Dev-Hugepages.montare statico
Dev-mqueue.montare statico
Proc-Sys-fs-binfmt_misc.montare statico
Sys-FS-Fuse-Connections.montare statico
sys-kernel-config.montare statico
sys-kernel-debug.montare statico
tmp.Monte disabili
Brandbot.Percorso disabilitato
Systemd-Ask-Password-Console.percorso statico
Systemd-Ask-Password-Plymouth.percorso statico
Systemd-Ask-Password-Wall.percorso statico
Sessione-1.Ambito statico
ARP-ETHETHERS.Servizio disabilitato
auditd.Servizio abilitato
[email protected] abilitato

Prova a utilizzare il comando Linux Grep per filtrare solo i servizi abilitati.

$ systemctl list-unità-file | Grep abilitato

Produzione

auditd.Servizio abilitato
[email protected] abilitato
Crond.Servizio abilitato
DBUS-ORG.Fedoraproject.Firewalld1.Servizio abilitato
DBUS-ORG.Freedesktop.NM-Dispatcher.Servizio abilitato
firewalld.Servizio abilitato
[email protected] abilitato
IrqBalance.Servizio abilitato
kdump.Servizio abilitato
monitor LVM2.Servizio abilitato

Avvia e interrompe i servizi un servizio

$ sudo systemctl inizia
$ sudo systemctl stop

Di seguito è riportato un esempio dell'esecuzione di un contenitore Docker come servizio.

Per eseguire l'applicazione (chiamiamola "x") come servizio SystemD, crea il seguente file nella directory "/etc/systemd/system" e nominalo come come
'Docker.Some_name.servizio' :

[Unità]
Descrizione = X contenitore
Dopo = Docker.servizio
Desideri = network-online.Docker target.PRESA
Richiede = Docker.PRESA
[Servizio]
Riavvia = sempre
ExecStart =/usr/bin/docker start -a qualche 00
ExectStop =/usr/bin/docker stop -t 10 qualche_name
[Installare]
WANTEDBY = Multi-utente.bersaglio

Per avviare un servizio con un avvio del sistema, utilizzare il seguente comando:

SystemCtl Abilita Docker.Some_name

Utilizzare i seguenti comandi per fermare e avviare manualmente il servizio:

SUD SERVICE STOP Docker.Some_name
Sudo Service Start Docker.Some_name

Controllare lo stato del servizio

Di seguito è riportato il comando per verificare lo stato del servizio in esecuzione.

$ sudo systemctl status

Riavvia un servizio

Puoi anche riavviare un servizio senza bisogno di fermarlo e avviarlo, il che richiede più sforzo. Di seguito è riportato il comando per eseguire questa attività.

$ sudo systemctl riavvia firewalld

Riavvia e arresto

Di seguito sono riportati i comandi per riavviare e chiudere il sistema, rispettivamente. (Come amministratore di sistema, dovresti anche sapere come chiudere il sistema usando una riga di comando)

$ sudo systemctl riavvio
$ sudo systemctl powoff

Avvio dei servizi al momento dell'avvio

Servizi come Docker devono essere avviati non appena la macchina è attivata. Per realizzarlo, puoi menzionare il comando seguente.

$ sudo systemctl abilita firewalld

Prova ad avviare la macchina e noterai che il servizio inizia automaticamente senza interazione umana.

Conclusione

In questo post, abbiamo visto come SystemD potrebbe eseguire le attività di amministrazione e configurazione comuni con la macchina. Un amministratore di sistema può utilizzare i comandi sopra per automatizzare la configurazione dei servizi in esecuzione nella macchina. Assicurati di provare questi comandi con i tuoi servizi personalizzati e realizzare il potere del SystemD.