Aller au contenu

Mode emergency (emergency.target)

Mode emergency (en anglais emergency mode, cible emergency.target) : état de démarrage minimal de systemd, qui ne lance qu'un shell root sur la console. La racine seule est montée, souvent en lecture seule ; ni les autres systèmes de fichiers, ni le réseau, ni aucun service ne démarrent. La page systemd.special(7) le décrit comme le minimum absolu pour obtenir un shell.

On y arrive de deux façons. Volontairement, en ajoutant systemd.unit=emergency.target (ou emergency) à la ligne de commande du noyau depuis le menu de GRUB, pour un seul démarrage. Involontairement, quand une unité requise échoue : local-fs.target déclare OnFailure=emergency.target, et un volume de /etc/fstab absent sans nofail y mène tout droit, avec le message You are in emergency mode. Contrairement à rescue.target, qui tente de monter tous les systèmes de fichiers et échouerait au même endroit, il permet de réparer précisément ce type de panne : mount -o remount,rw /, correction de fstab, systemctl daemon-reload, puis systemctl default pour reprendre le démarrage.

Le shell est protégé par sulogin, qui demande le mot de passe de root. Sur Ubuntu et les images cloud Debian, le compte root est verrouillé : sulogin répond Cannot open access to console, the root account is locked et refuse. Pour ce seul démarrage, le paramètre SYSTEMD_SULOGIN_FORCE=1 autorise le shell sans mot de passe ; sinon, il reste init=/bin/bash ou le mode de secours de l'hébergeur. Le lancer à distance (systemctl emergency) coupe immédiatement SSH.

Dans les cours

Voir aussi