Aide pour Identifier une Erreur de Boot [Raspi3]

Tags: #<Tag:0x00007fb4175e38f0> #<Tag:0x00007fb4175e3800>

Bonjour à tous,
J’espère qu’un sujet sur un Raspberry ne sera pas mal venu ici mais je préfère croire que non ^^
Voilà, en fait j’ai besoin d’aide pour identifier un problème au démarrage de ma bête :

Si l’un de mes deux disques durs externes (où les 2) sont absents, j’obtiens une belle erreur de boot :
En résumé (et par ce que je ne peut pas C/C ladite erreur),

  • Il arrive sur " [ ok ] mounted /boot " Et là il cherche un bon moment,
  • Il m’affiche " [ *** ] A start job is running for dev-sdb1.device " pendant 1m30,
  • Puis fail avec les messages suivants : " [DEPEND] Dependency failed for /media/DD02 "
    Et " [DEPEND] Dependency failed for Local File System "
  • Suite de quoi il passe en Emergency Mode -_- …

Ce que j’en comprends : il cherche des éléments nécessaires au boot (voir la partition " /boot ") dans mon disque dur “sdb1” monté sous “/media/DD02”.

SAUF QUE :

  • Si je boot avec mon disque “sdb1” seul, l’erreur survie. Idem avec l’autre disque.
  • fstab m’indique que la partition /boot ne se trouve pas sur l’un des disque externes :
proc            /proc           proc    defaults          0       0
/dev/mmcblk0p6  /boot           vfat    defaults          0       2
/dev/mmcblk0p7  /               ext4    defaults,noatime  0       1
/dev/sda1       /media/DD01     ntfs-3g defaults          0       2
/dev/sdb1       /media/DD02     ntfs-3g defaults          0       2

Il indique plutôt “/dev/mmcblk0p6” qui corresponds, j’imagine, à la SD du Rasbperry…
C’qui est logique, je ne veux pas de partition bootable sur mes DD externes !
Et j’ai installé mon Raspi uniquement sur sa propre mémoire à la base …
Mais alors pourquoi le système boot-il sur mes disques comme ça ?!
Et pire encore : pourquoi à t-il besoin des DEUX DISQUES si l’un des deux à soit disant une tâche de boot à accomplir ?!!

Et comment régler ce problème ?!

J’avais un cron visant à copier le disque DD01 dans le DD02, je l’ai viré (au cas où, et mon but est de retirer l’un des deux disques pour un autre usage).
J’ai FORMATÉ le disque “sdb1/DD02” pensant qu’il avait des dépendances dans son fichier “File System”,
Un formatage LENT… Je n’ose pas appliquer le même traitement à l’autre disque, de peur de perdre mon boot une fois pour toutes…

Bref, je ne sais plus bien où chercher ni ce qui cause ce problème et j’avoue sans honte ne pas du tout avoir envie de recommencer une x ième fois l’installation complète de mon Raspberrypi alors si quelqu’un à une idée à me suggérer je suis plus que preneur :slight_smile:

Bonjour Mak-chan

Ce n’est pas le système de fichiers monté sur /boot qui pose problème
puisque le message [ ok ] mounted /boot s’affiche pour indiquer que tout va bien de ce côté là,
mais plutôt le fait que certains des systèmes de fichiers des partitions citées dans ton fichier /etc/fstab
ne sont pas accessibles au moment du démarrage du système.

Dans ton fichier /etc/fstab
tu pourrais, pour les systèmes de fichiers de tes disques externes,
juste après l’option default ajouter, après une virgule,
l’option de montage nofail

mais, pour chacun des systèmes de fichiers listés dans ton fichier /etc/fstab
plutôt que d’utiliser les noms des fichiers de périphériques associées aux partitions,
utilises l’UUID des systèmes de fichiers concernés.

1 J'aime

Salut
Si ça passe ne emergency mode, tu dois pouvoir te connecter en mode texte avec root

Et investiguer

  • Vérifier la cohérence fstab UUID

blkid

cat /etc/fstab

  • Verifier les services en erreur

    systemctl --failed

  • interroger les services en fautes

systemctl status nom-du-service

exemple

systemctl status dev-disk-by*

Mon but était de retirer le Disque “DD01” et ne laisser que le “DD02”,
Pour ce faire, ma première tentative à été de commenter la ligne concernant le disque 01 dans fstab,
De le retirer proprement (sudo umount /dev/sda1) et de redémarrer …

Il me semble (je sais plus bien, tellement j’ai tester de trucs tordus), qu’après un reboot j’avais toujours mon erreur sur le disque 02 … C’est même plutôt certains sinon je n’aurais pas chercher à faire autrement ^^’ !

Enfin bref, quoi qu’il en soit, que ce soit du au UUID à la place du nom de fichier où le fait d’avoir RETIRER (et non juste commenté) la ligne du disque 02 dans fstab à résolu mon problème ! (J’ai également ajouter le “nofail” comme conseillé)

Merci infiniment à vous 2 pour cette réponse, simple, efficace et surtout très rapide 0_0.
J’vous en suis très reconnaissant et mon Raspberry aussi =D !

Les noms de périphériques /dev/sd* ne sont pas stables. Ils sont affectés aux disques dans l’ordre de leur découverte à chaque démarrage : premier = /dev/sda, second = /dev/sdb… Donc si tu débranches le disque vu comme /dev/sda, au prochain démarrage le disque qui était vu comme /dev/sdb sera vu comme /dev/sda.

C’est aussi pour cela qu’on préfère identifier les systèmes de fichiers dans fstab par leur UUID ou LABEL plutôt que par le nom du périphérique qui les contient (sauf quand c’est un volume logique LVM dont le nom de périphérique “convivial” /dev/vg/lv ou /dev/mapper/vg-lv est persistant par nature, mais pas le nom “réel” /dev/dm-* qui est numéroté par ordre de création).

1 J'aime

Ah d’accord, merci pour ces explications détaillées !
Grâce à elles je comprends comment ça marche, et surtout d’où venait mon problème :
En effet, je commentais le montage “/dev/sda” qui était mon disque “01” pour le retirer physiquement,
Mais alors mon disque “02” devenait “sda” puisqu’il était le seul connecté.

J’étais déjà tombé sur cette astuce de renseigner le UUID dans fstab, mais je prenais ça comme une manie du même ordre que préférer “nano” à “vim” comme éditeur de texte (oui, il y à là aussi de vraies raisons mais peut parlantes à mon usage), enfin bref, me voilà à présent mieux instruit et avec un système de nouveau opérationnel alors merci encore pour tous cela ^^

1 J'aime