Script rc debian

De Cliss XXI
Révision datée du 1 mars 2012 à 18:04 par 193.252.202.136 (discussion) (Nouvelle page : Introduction aux runlevel et a ses variantes debian: Si: * /etc/default/rcS contient CONCURRENCY=none -> démarrage sysV classique * sinon si les fichiers /etc/init.d/.depend.{boot,...)
(diff) ← Version précédente | Voir la version actuelle (diff) | Version suivante → (diff)
Sauter à la navigation Sauter à la recherche

Introduction aux runlevel et a ses variantes debian:

Si:

  • /etc/default/rcS contient CONCURRENCY=none -> démarrage sysV classique
  • sinon si les fichiers /etc/init.d/.depend.{boot,start,stop} existent et sont non vide -> démarrage "startpar -M"
  • tout les autres cas, -> démarrage sysV classique

Quelque soit le système de démarrage le cas particulier du runlevel 1 est source de confusion:

  • Appeler le runlevel 1 (avec init 1 par exemple) passe le système en mono utilisateur dans le runlevel S.
  • Appeler le runlevel S (avec init S par exemple) est une erreur, certains scripts vont être lancés en double.

Voila comment je m'explique les choses pour tenter d'y voir clair:

  • Pour passer en mode mono utilisateur, la porte d'entrée est le runlevel 1.
  • Pour montrer qu'on est bien en mode mono utilisateur (single mode) le système passe en runlevel S (S pour "single")

Les scripts de démarrages ont pour moi une autre signification:

  • rc1.d contient les script start/stop permettant d'aller vers le runlevel 1 ou d'en sortir
  • rcS.d contient les script de démarrage de la machine elle même. Ces scripts ne sont censé être lancés qu'une seule fois par démarrage.

Bref le S de "runlevel S" et "rcS.d" n'a rien a voir:

  • runlevel S -> on est en mode mono utilisateur (single)
  • rcS.d -> les scripts "start" (ou "boot" dans le cas du démarrage startpar) lancés une seule fois par démarrage.

SystèmeV

startpar -M

Fichiers utilisés

  • /etc/inittab
  • /etc/default/rcS
  • /etc/init.d/rc
  • /etc/rc?.d/*
  • /etc/init.d/.depend.{boot,start,stop}

Init-sysV.png

Init-startpar.png