Come gestire i servizi Systemd su un sistema Linux
Systemd è ora utilizzato di default nella maggior parte delle distribuzioni Linux, da Fedora e Red Hat a Ubuntu, Debian, openSUSE e Arch. Il comando systemctl consente di ottenere informazioni sullo stato di systemd e controllare i servizi in esecuzione.
Nonostante le polemiche, questo introduce almeno un po 'di standardizzazione tra le distribuzioni Linux. Gli stessi comandi ti permetteranno di gestire i servizi nello stesso modo su qualsiasi distribuzione Linux usando systemd.
Nota: Per modificare la configurazione del tuo sistema su una distribuzione Linux come Ubuntu che usa sudo, dovrai anteporre i comandi qui a sudo. Su altre distribuzioni Linux, dovrai diventare l'utente root con su comando prima.
Controlla se il tuo sistema Linux sta usando Systemd
Se non sei sicuro che la tua distribuzione Linux stia usando systemd, apri una finestra di Terminale ed esegui il seguente comando. Questo ti mostra il numero di versione di systemd sul tuo sistema Linux, se ha installato systemd:
systemd -version
Analizza il processo di avvio
Il comando systemd-analyze consente di visualizzare le informazioni sul processo di avvio, ad esempio quanto tempo è trascorso e quali servizi (e altri processi) hanno aggiunto la maggior parte del tempo al processo di avvio.
Per visualizzare le informazioni sul processo di avvio in generale, eseguire questo comando:
systemd-analyze
Per visualizzare il tempo di avvio di ciascun processo, esegui questo comando:
systemd-analizzare la colpa
Visualizza unità
Systemd utilizza "unità", che possono essere servizi (.service), punti di montaggio (.mount), dispositivi (.dispositivo) o socket (.socket). Lo stesso comando systemctl gestisce tutti questi tipi di unità.
Per visualizzare tutti i file di unità disponibili sul tuo sistema:
systemctl list-unit-files
Per elencare tutte le unità in esecuzione:
systemctl list-units
Per elencare tutte le unità guaste:
systemctl -failed
Gestione servizi
Per visualizzare un elenco di servizi abilitati e disabilitati, si utilizza lo stesso comando systemctl come sopra, ma si dice di elencare solo i servizi:
systemctl list-unit-files -type = service
Il comando systemctl consente di avviare, arrestare o riavviare un servizio. Puoi anche dire a un servizio di "ricaricare" la sua configurazione.
Il comando di stato è l'unica azione qui che stamperà e trasmetterà al terminale. Gli altri comandi avranno effetto silenzioso.
systemctl start name.service
systemctl stop name.service
systemctl restart name.service
systemctl reload name.service
systemctl status name.service
Utilizzare il comando systemctl enable per fare in modo che systemd avvii automaticamente un servizio (o un altro tipo di unità) all'avvio. Il comando systemctl disable disabilita i servizi e impedisce l'avvio automatico con il computer.
systemctl enable name.service
systemctl disable name.service
È possibile "mascherare" un servizio o un'altra unità per impedirne l'avvio. Dovrai smascherarlo prima che possa essere avviato in futuro:
systemctl mask name.service
systemctl smaschera name.service
C'è molto di più a systemd e ai suoi vari comandi oltre a questo, ovviamente. Systemd offre una varietà o comandi di gestione dell'alimentazione per arrestare, riavviare, ibernare e controllare in altro modo lo stato di alimentazione del sistema. È possibile scrivere i propri file di unità per creare servizi e punti di montaggio o modificare i file di unità esistenti.
Systemd offre anche "obiettivi", che sono simili ai runlevel, ma diversi. invece di un numero, gli obiettivi hanno nomi: è possibile che systemd si trovi in più stati target contemporaneamente. Systemd offre anche il proprio journal di sistema, a cui si può accedere con il comando journalctl. Per impostazione predefinita, memorizza i registri di sistema in formato binario, ma se preferisci puoi passare ai registri in formato testo normale.
Il wiki di Arch Linux ha informazioni più approfondite su systemd e la maggior parte delle informazioni si applica a systemd su tutte le distribuzioni Linux. Si dovrebbe anche controllare la documentazione systemd della propria distribuzione Linux per maggiori informazioni.
Immagine di credito: Bert Heymans su Flickr