Que sont les «niveaux d’exécution» sous Linux?

Lorsqu’un système Linux démarre, il entre dans son niveau d’exécution par défaut et exécute les scripts de démarrage associés à ce niveau d’exécution. Vous pouvez également basculer entre les niveaux d’exécution – par exemple, il existe un niveau d’exécution conçu pour les opérations de récupération et de maintenance.

Traditionnellement, Linux utilisait des scripts d’initialisation de type System V – alors que les nouveaux systèmes d’initialisation finiront par devenir obsolètes les niveaux d’exécution traditionnels, ils ne l’ont pas encore fait. Par exemple, le système Upstart d’Ubuntu utilise toujours des scripts de style System V.

Qu’est-ce qu’un niveau d’exécution?

Lorsqu’un système Linux démarre, il lance le init processus. init est responsable du lancement des autres processus sur le système. Par exemple, lorsque vous démarrez votre ordinateur Linux, le noyau démarre init et init exécute les scripts de démarrage pour initialiser votre matériel, mettre en réseau, démarrer votre bureau graphique.

Cependant, il n’y a pas qu’un seul ensemble de scripts de démarrage que init exécute. Il existe plusieurs niveaux d’exécution avec leurs propres scripts de démarrage – par exemple, un niveau d’exécution peut activer le réseau et lancer le bureau graphique, tandis qu’un autre niveau d’exécution peut laisser le réseau désactivé et ignorer le bureau graphique. Cela signifie que vous pouvez passer du «mode bureau graphique» au «mode console texte sans réseau» avec une seule commande, sans démarrer ni arrêter manuellement différents services.

Plus spécifiquement, init exécute les scripts situés dans un répertoire spécifique qui correspond au niveau d’exécution. Par exemple, lorsque vous entrez le niveau d’exécution 3 sur Ubuntu, init exécute les scripts situés dans le répertoire /etc/rc3.d.

Au moins, c’est ainsi que cela fonctionne avec un système d’initialisation System V traditionnel – les distributions Linux commencent à remplacer l’ancien système d’initialisation System V. Alors que Upstart d’Ubuntu maintient actuellement la compatibilité avec les scripts d’initialisation SysV, cela est susceptible de changer à l’avenir.

Les niveaux d’exécution

Certains niveaux d’exécution sont standard entre les distributions Linux, tandis que certains niveaux d’exécution varient d’une distribution à l’autre.

Les niveaux d’exécution suivants sont standard:

  • 0 – Arrêt (Arrête le système.)
  • 1 – Mode utilisateur unique (Le système démarre en mode super-utilisateur sans démarrer de démons ni de mise en réseau. Idéal pour démarrer dans un environnement de récupération ou de diagnostic.)
  • 6 – Redémarrer

Les niveaux d’exécution 2 à 5 varient en fonction de la distribution. Par exemple, sur Ubuntu et Debian, les niveaux d’exécution 2 à 5 sont les mêmes et fournissent un mode multi-utilisateur complet avec connexion réseau et graphique. Sur Fedora et Red Hat, le niveau d’exécution 2 fournit le mode multi-utilisateur sans mise en réseau (connexion à la console uniquement), le niveau d’exécution 3 fournit le mode multi-utilisateur avec mise en réseau (connexion à la console uniquement), le niveau d’exécution 4 est inutilisé et le niveau d’exécution 5 fournit le mode multi-utilisateur avec connexion réseau et graphique.

En relation :  Comment transformer votre iPhone ou iPad en raccourci à distance pour votre Mac avec Alfred

Passer à un autre niveau d’exécution

Pour passer à un autre niveau d’exécution alors que le système est déjà en cours d’exécution, utilisez la commande suivante:

sudo telinit #

Remplacez # par le numéro du niveau d’exécution vers lequel vous souhaitez basculer. Omettez sudo et exécutez la commande en tant que root si vous exécutez une distribution qui n’utilise pas sudo.

Démarrer directement à un niveau d’exécution spécifique

Vous pouvez sélectionner un niveau d’exécution pour démarrer à partir du chargeur de démarrage – Grub, par exemple. Au début du processus de démarrage, appuyez sur une touche pour accéder à Grub, sélectionnez votre entrée de démarrage et appuyez sur e pour la modifier.

Vous pouvez ajouter Célibataire à la fin de la Linux ligne pour entrer le niveau d’exécution mono-utilisateur (niveau d’exécution 1). (Appuyez sur Ctrl + x pour démarrer après.) C’est la même chose que l’option du mode de récupération dans Grub.

Traditionnellement, vous pouvez spécifier un nombre en tant que paramètre du noyau et démarrer à ce niveau d’exécution – par exemple, en utilisant 3 au lieu de Célibataire pour démarrer au niveau d’exécution 3. Cependant, cela ne semble pas fonctionner sur les dernières versions d’Ubuntu – Upstart ne semble pas le permettre. De même, la manière dont vous modifiez le niveau d’exécution par défaut dépendra de votre distribution.


Alors que le démon Upstart d’Ubuntu émule toujours le système d’initialisation SystemV, une grande partie de ces informations changera à l’avenir. Par exemple, Upstart est basé sur les événements – il peut arrêter et démarrer les services lorsque des événements se produisent (par exemple, un service peut démarrer lorsqu’un périphérique matériel est connecté au système et s’arrêter lorsque le périphérique est supprimé.) Fedora a également son propre successeur. à init, systemd.

Moyens Staff
Moyens I/O Staff vous a motivé, donner des conseils sur la technologie, le développement personnel, le style de vie et des stratégies qui vous aider.