Translation(s): English - Français - Italiano - Русский


BootProcess > init


Init est le premier programme exécuté après le démarrage de votre système ; il continue à fonctionner comme processus numéro 1 jusqu'à l'arrêt du système. La tâche de Init est de lancer les autres programmes essentiels pour le fonctionnement de votre système. Init est le parent de tous les autres processus. Pour en savoir plus, voir la page du manuel init(8).

Vue d'ensemble

Le processus d'initialisation du système est traité par le démon init. Dans Squeeze et dans les versions précédentes, ce démon est fourni par le paquet sysvinit et aucune alternative n’est prise en charge. Dans Wheezy le démon d’initialisation est encore sysvinit, mais une « préfiguration technologique » de systemd est disponible. Dans Jessie et Stretch, le système d’initialisation par défaut systemd, mais il est possible de passer à sysvinit.

Depuis Jessie, seul systemd est complètement pris en charge ; sysvinit est pris en charge en grande partie, mais les paquets Debian ne sont pas « requis » de fournir les scripts de démarrage sysvinit. runit est aussi empaqueté, mais il n’a pas bénéficié du même de niveau de test et de prise en charge que les autres et ne peut pas pris en charge comme PID 1.

Déterminer le système d’initialisation

En général, vous pouvez déterminer quel système d’initialisation est installé en vérifiant si le fichier /sbin/init est un lien symbolique. S’il n’est pas un lien symbolique, alors c’est sysvinit qui est probablement utilisé. Si c’est un lien symbolique pointant sur /lib/systemd/systemd, alors c’est systemd qui est utilisé. Si c’est un lien symbolique pointant vers /lib/sysvinit/init, alors c’est sysvinit qui est utilisé.

Si vous pensez que le système d’initialisation a pu être changé sans redémarrage, vous pouvez aussi entrer la commande cat /proc/1/comm pour voir quelle commande a été utilisée pour le démon d’initialisation durant le dernier démarrage.

Changer le système d’initalisation

Dans Stretch, vous pouvez passer de systemd à sysvinit en suivant ces étapes :

  1. apt-get install sysvinit-core

  2. redémarrer

Durant la plus grande partie du temps où Stretch était Debian Testing, vous pouviez passer de systemd à runit en suivant ces étapes :

  1. apt-get install runit-systemd

  2. redémarrer
  3. apt-get install runit-init

  4. redémarrer à nouveau

Cependant, le paquet runit-init a été retiré de Debian peu de temps avant la publication de Stretch. Actuellement, runit n’est pas pris en charge comme système d’initialisation dans Debian, bien que cela puisse changer dans le futur et pourrait fonctionner dans testing ou unstable, mais sachez que toute tentative sera entreprise à vos risques. (Voir 861536 pour la discussion sur son retrait.)

Configuration de sysvinit

Le fichier de configuration inittab dit à init ce qu'il a à faire. En particulier, il contient les lignes :

qui indiquent aux fichiers /etc/init.d/rcS d'exécuter les scripts d'initialisation (dans /etc/rcS.d/*), puis les scripts correspondant au niveau d'exécution demandé (dans /etc/rcS.[0-9]/*).

Voir aussi


CategoryBootProcess