Dans CentOS 7/RHEL 7, systemd utilise des cibles au lieu de niveaux d'exécution. /etc/inittab
n'est plus utilisé par systemd pour modifier les niveaux d'exécution.
Ce guide vous aidera à définir le niveau d'exécution par défaut dans CentOS 7 / RHEL 7.
Modifier le niveau d'exécution par défaut
Le niveau d'exécution par défaut peut être défini soit en utilisant le systemctl commande ou création d'un lien symbolique des cibles de niveau d'exécution au fichier cible par défaut.
Méthode 1
Vérifions le niveau d'exécution actuel en lançant la commande suivante.
systemctl get-default
Sortie :
runlevel5.target
Avant de changer le niveau d'exécution par défaut, nous devons vérifier les cibles disponibles.
systemctl list-units --type=target
La sortie ressemblera à ci-dessous.
UNIT LOAD ACTIVE SUB DESCRIPTION basic.target loaded active active Basic System cryptsetup.target loaded active active Encrypted Volumes getty.target loaded active active Login Prompts graphical.target loaded active active Graphical Interface local-fs-pre.target loaded active active Local File Systems (Pre) local-fs.target loaded active active Local File Systems multi-user.target loaded active active Multi-User System network.target loaded active active Network nfs.target loaded active active Network File System Server paths.target loaded active active Paths remote-fs.target loaded active active Remote File Systems slices.target loaded active active Slices sockets.target loaded active active Sockets swap.target loaded active active Swap sysinit.target loaded active active System Initialization timers.target loaded active active Timers LOAD = Reflects whether the unit definition was properly loaded. ACTIVE = The high-level unit activation state, i.e. generalization of SUB. SUB = The low-level unit activation state, values depend on unit type.
Changer la valeur par défaut au niveau d'exécution 3 (rien d'autre qu'un multi-user.target).
systemctl set-default multi-user.target
Confirmez le niveau d'exécution par défaut.
systemctl get-default
Sortie :
multi-user.target
Redémarrez et vérifiez.
reboot
Méthode 2
Vous remarquerez peut-être une sortie ci-dessous lorsque le systemctl set-default multi-us er.target la commande est émise.
rm '/etc/systemd/system/default.target' ln -s '/usr/lib/systemd/system/multi-user.target' '/etc/systemd/system/default.target'
Ce que fait la commande n'est rien d'autre que de créer un lien symbolique des cibles de niveau d'exécution vers le fichier cible par défaut.
Vérifiez le niveau actuel.
systemctl get-default
Sortie :
multi-user.target
Avant de faire le lien symbolique, listons les fichiers dans le répertoire systemd.
ls /lib/systemd/system/runlevel*target -l
Le résultat ressemblera à ce qui suit :
lrwxrwxrwx. 1 root root 15 Aug 3 13:44 /lib/systemd/system/runlevel0.target -> poweroff.target lrwxrwxrwx. 1 root root 13 Aug 3 13:44 /lib/systemd/system/runlevel1.target -> rescue.target lrwxrwxrwx. 1 root root 17 Aug 3 13:44 /lib/systemd/system/runlevel2.target -> multi-user.target lrwxrwxrwx. 1 root root 17 Aug 3 13:44 /lib/systemd/system/runlevel3.target -> multi-user.target lrwxrwxrwx. 1 root root 17 Aug 3 13:44 /lib/systemd/system/runlevel4.target -> multi-user.target lrwxrwxrwx. 1 root root 16 Aug 3 13:44 /lib/systemd/system/runlevel5.target -> graphical.target lrwxrwxrwx. 1 root root 13 Aug 3 13:44 /lib/systemd/system/runlevel6.target -> reboot.target
Comme à l'étape précédente, le niveau d'exécution par défaut actuel 3. Exécutez la commande suivante pour créer un lien symbolique de runlevel5.target vers le fichier default.target.
ln -sf /lib/systemd/system/runlevel5.target /etc/systemd/system/default.target
ou
ln -sf /lib/systemd/system/graphical.target /etc/systemd/system/default.target
Vérifiez à nouveau le niveau actuel.
systemctl get-default
Sortie :
runlevel5.target
Maintenant, le niveau d'exécution par défaut est 5 (mode graphique), redémarrez le serveur et vérifiez-le.
reboot
Conclusion
C'est tout. J'espère que cet article vous a aidé à modifier le niveau d'exécution par défaut dans CentOS 7 / RHEL 7. Vos commentaires sont les bienvenus.