Come modificare i runlevel (obiettivi) in SystemD
Systemd è un moderno sistema init per Linux: un gestore di sistema e servizi compatibile con il popolare sistema init SysV e gli script init LSB. Lo scopo era superare le carenze di SysV init come spiegato nel seguente articolo.
- La storia dietro "init" e "systemd": perché "init" doveva essere sostituito con "systemd" in Linux
Sui sistemi simili a Unix come Linux, lo stato operativo corrente del sistema operativo è noto come runlevel; definisce quali servizi di sistema sono in esecuzione. Nei sistemi di init più diffusi come SysV init, i runlevel sono identificati da numeri. Tuttavia, in systemd i runlevel vengono definiti target.
Lettura consigliata: Gestione del processo e dei servizi di avvio del sistema (SysVinit, Systemd e Upstart)
In questo articolo spiegheremo come modificare i runlevel (obiettivi) con systemd. Prima di proseguire, esaminiamo brevemente la relazione tra i numeri dei runlevel e i target.
- Runlevel 0 corrisponde a poweroff.target (e runlevel0.target è un collegamento simbolico a poweroff.target ).
- Run level 1 corrisponde a rescue.target (e runlevel1.target è un collegamento simbolico a rescue.target ).
- Il runlevel 3 è emulato da multi-user.target (e runlevel3.target è un collegamento simbolico a multi-user.target ).
- Il Runlevel 5 è emulato da graphic.target (e runlevel5.target è un collegamento simbolico a graphic.target ).
- Runlevel 6 è emulato da reboot.target (e runlevel6.target è un collegamento simbolico a reboot.target ).
- Emergenza corrisponde a emergenza.target.
Come visualizzare il target corrente (livello di esecuzione) in Systemd
All'avvio del sistema, per impostazione predefinita systemd attiva l'unità default.target. Il suo compito principale è attivare servizi e altre unità inserendoli tramite dipendenze.
Per visualizzare la destinazione predefinita, digitare il comando seguente.
#systemctl get-default
graphical.target
Per impostare la destinazione predefinita, esegui il comando seguente.
systemctl set-default multi-user.target
Come modificare la destinazione (runlevel) in Systemd
Mentre il sistema è in esecuzione, è possibile cambiare la destinazione (livello di esecuzione), il che significa che solo i servizi e le unità definiti in tale destinazione verranno ora eseguiti sul sistema.
Per passare al runlevel 3, esegui il comando seguente.
systemctl isolate multi-user.target
Per modificare il sistema in runlevel 5, digita il comando seguente.
systemctl isolate graphical.target
Per ulteriori informazioni su systemd, leggi questi articoli utili:
- Come gestire servizi e unità "Systemd" utilizzando "Systemctl" in Linux
- Come creare ed eseguire nuove unità di servizio in Systemd utilizzando lo script Shell
- Gestione del processo e dei servizi di avvio del sistema (SysVinit, Systemd e Upstart)
- Gestisci i messaggi di registro in Systemd utilizzando Journalctl [Guida completa]
In questa guida, abbiamo mostrato come modificare i runlevel (obiettivi) con systemd. Utilizza il modulo di commento qui sotto per inviarci qualsiasi domanda o pensiero riguardante questo articolo.