Dans cette partie de la préparation à l'examen RHCSA, vous apprendrez à passer manuellement à différentes cibles de démarrage. Cet article vous apprendra également comment définir des cibles de démarrage par défaut pour démarrer automatiquement sur une cible graphique ou multi-utilisateur sur le système Red Hat Enterprise Linux.
Dans ce didacticiel, vous apprendrez :
- Comment vérifier la cible de démarrage par défaut
- Comment basculer manuellement entre différentes cibles
- Comment définir le démarrage par défaut sur une cible multi-utilisateur
- Comment définir le démarrage par défaut sur la cible graphique

Configuration logicielle requise et conventions utilisées
Catégorie | Exigences, conventions ou version du logiciel utilisée |
---|---|
Système | Red Hat Enterprise Linux 8 |
Logiciel | N/A |
Autre | Accès privilégié à votre système Linux en tant que root ou via le sudo commande. |
Conventions | # - nécessite que les commandes linux données soient exécutées avec les privilèges root soit directement en tant qu'utilisateur root, soit en utilisant sudo commande$ – nécessite que les commandes linux données soient exécutées en tant qu'utilisateur normal non privilégié |
Que sont les cibles de niveau d'exécution ?
Vous pouvez considérer la cible de démarrage comme un niveau de fonctionnement spécifique. Ainsi, par exemple, si vous préférez utiliser l'interface utilisateur graphique (étant donné que l'interface graphique est installée), vous pouvez modifier le niveau d'opération en graphical.target
. De même, pour le niveau opérationnel multi-utilisateur non graphique, vous devrez passer à multi-user.target
.
Si vous connaissez SysV qui était la norme d'initialisation par défaut pour de nombreux systèmes GNU/Linux avant le systemd
prolifération, vous pouvez vous souvenir de la cible graphique en tant que runlevel 5
ou cible multi-utilisateurs en tant que runlevel 4
. En fait, peu de choses ont changé et la nomenclature des niveaux d'exécution existe toujours. À l'aide de la commande suivante, vous pouvez répertorier toutes les cibles de niveau d'exécution disponibles sur votre système RHEL :
# ls -l /lib/systemd/system/runlevel*.target
Pour toutes les cibles possibles, utilisez :
# systemctl list-units --type target or # systemctl list-units --type target --all
Niveau d'exécution | Unité cible | Description de l'unité cible |
---|---|---|
0 | runlevel0.target ou poweroff.target | Changer votre système au niveau d'exécution 0 éteindra le système et éteindra votre serveur/bureau. |
1 | runlevel1.target ou rescue.target | Également connu sous le nom de mode unique, le niveau d'exécution de secours est utilisé pour le dépannage du système et diverses tâches d'administration du système. |
2 | runlevel2.target ou multi-user.target | Niveau d'exécution défini par l'utilisateur. Par défaut, identique au niveau d'exécution 3. |
3 | runlevel3.target ou multi-user.target | Il s'agit d'un niveau d'exécution multi-utilisateurs et non graphique. Plusieurs utilisateurs peuvent se connecter via des consoles/terminaux locaux ou un accès réseau à distance. |
4 | runlevel4.target ou multi-user.target | Niveau d'exécution défini par l'utilisateur. Par défaut, identique au niveau d'exécution 3. |
5 | runlevel5.target ou graphic.target | Niveau d'exécution graphique multi-utilisateurs. Plusieurs utilisateurs peuvent se connecter via des consoles/terminaux locaux ou un accès réseau à distance. |
6 | runlevel6.target ou reboot.target | Changer votre système à ce niveau d'exécution redémarrera votre système. |
Lors de votre examen RHCSA, lorsque vous êtes bloqué ou que vous ne vous souvenez tout simplement pas de la terminologie ci-dessus concernant les niveaux d'exécution, consultez la page de manuel en exécutant
man runlevel
commande.Comment vérifier et modifier la cible de démarrage par défaut
Tout d'abord, nous allons apprendre à vérifier une cible de démarrage de niveau d'exécution par défaut actuellement configurée. Une fois cela fait, nous allons définir une cible de niveau d'exécution par défaut de notre système au niveau d'exécution 3, c'est-à-dire au multi-user.target
unité cible. La définition d'une cible de niveau d'exécution par défaut demandera à votre système de démarrer automatiquement dans un niveau d'exécution préconfiguré.
- Vérifier une configuration système par défaut :
# systemctl get-default graphical.target OR # ls -l /etc/systemd/system/default.target
La commande ci-dessus affichera le nom de l'unité cible de niveau d'exécution par défaut actuellement définie.
- Définir l'unité cible de niveau d'exécution par défaut sur
multi-user.target
unité cible. Cela configurera votre système pour démarrer enrunlevel3
la prochaine fois que vous redémarrez votre système.# systemctl set-default multi-user.target Removed /etc/systemd/system/default.target. Created symlink /etc/systemd/system/default.target → /usr/lib/systemd/system/multi-user.target.
LE SAVIEZ-VOUS ?
Vous pouvez faire référence à des unités cibles uniques via différents noms. Par exemple, pour votre examen RHCSA, il vous sera peut-être plus facile de vous souvenir derunlevel3
au lieu demulti-user.target
. Non seulement il est plus facile à retenir, mais il est également plus rapide à taper, ce qui vous fait gagner du temps lors de votre examen. Par exemple, les quatre commandes suivantes sont complètement identiques. La meilleure commande à utiliser est celle dont vous vous souvenez le plus facilement :# systemctl set-default multi-user.target # systemctl set-default multi-user # systemctl set-default runlevel3.target # systemctl set-default runlevel3
Pour mieux comprendre ce qui se passe ici, vous devez d'abord consulter l'objectif RHCSA Créer des liens matériels et logiciels. Une fois prêt notez que des cibles comme par exemple le
multi-user.target
est simplement un lien symbolique durunlevel3.target
unité.Répertorier toutes les cibles de démarrage disponibles sur le système RHEL.
- Redémarrez votre système :
# reboot
Comment passer manuellement à une cible de niveau d'exécution différente
La section ci-dessus expliquait comment modifier un niveau d'exécution par défaut. Cela signifie que la prochaine fois que le système sera redémarré, il démarrera dans un niveau d'exécution sélectionné par l'utilisateur. Ensuite, nous apprendrons comment changer le niveau d'exécution à la volée sans avoir besoin de redémarrer. Cela peut être accompli en utilisant le systemctl
commande avec une combinaison de isolate
argument.
Dans l'exemple ci-dessous, nous allons temporairement changer du graphical
niveau d'exécution vers multi-user
cibler.
- Passer à
multi-user
niveau d'exécution :# systemctl isolate multi-user
La commande ci-dessus a simplement désactivé le
graphical
niveau d'exécution et services correspondants. - Si vous ne voyez pas l'invite de connexion, vous devrez peut-être passer à une autre console TTY en utilisant la combinaison de
CTRT+ALT+F1
clés.
Exercices
- Redémarrez votre système en passant manuellement à
reboot.target
en utilisant lesystemctl
commande. Pouvez-vous également utiliser l'arrêt de la cible de niveau d'exécution et éteindre votre système ? - Configurez votre système pour qu'il démarre directement en mode
multi-user
cibler. Redémarrez votre système et confirmez que le système démarre de manière persistante enmulti-user
cibler. - Essayez de basculer à plusieurs reprises entre le
multi-user
niveau d'exécution etgraphical
niveau d'exécution. Pourquoi vous ne pouvez pas voir l'invite de connexion directement lorsque vous passez dugraphical
versmulti-user
niveau d'exécution ? - Il s'agit d'une question complémentaire au programme pour les bons élèves et ceux qui n'ont pas peur des petits tracas et de la recherche personnelle.
AVERTISSEMENT
En travaillant sur la question 4, vous pourriez vous retrouver avec un système défectueux. Par conséquent, procédez uniquement sur des systèmes hors production tels que des machines virtuelles sandbox, etc.Encore une fois, n'essayez pas cette question si vous n'êtes pas prêt à éventuellement casser votre système ! Définissez votre cible de démarrage par défaut sur
reboot.target
unité et redémarrez votre système. Pouvez-vous corriger les redémarrages constants et définir votre niveau d'exécution par défaut pour direrunlevel5
?