Le piège à con du jour : grub et ext3
March 18, 2011 by nonoCatégories geekeries - Mots-clés ext3 grub
Un bug à la con qui m'a bloqué pendant une journée, bon à savoir.
J'avais un serveur sous Linux au disque dur un peu malade (quand smartctl arrête de compter les blocs défectueux parce qu'il y en a trop, c'est «un peu» malade) et pas trop moyen de l'arrêter une heure le temps de réinstaller l'OS sur un disque vierge. Qu'à cela ne tienne : je branche le nouveau disque sur une autre machine, j'y recopie le système (les données étaient sur des disques intacts), plus qu'à changer le disque, booter sur un CD et installer grub. Durée prévisible de la manip : un quart d'heure en comptant large.
Sauf qu'au dernier moment, pas moyen d'installer grub : monsieur se plaignait de ne pas trouver le fichier /boot/grub/stage1. Pourtant il était là, ce fichier, pas de raison qu'il ait bougé, et il était bien identique à celui d'une machine en état de marche.
Finalement, la clé de l'énigme est là :
[root@carrosse ~]# dumpe2fs /dev/sda1 | grep -i inode.size dumpe2fs 1.41.12 (17-May-2010) Inode size: 256
Sur une Fedora récente, par défaut, mkfs.ext3 crée les systèmes de fichiers ext3 avec des i-noeuds de 256 octets. Or mon serveur tourne sous CentOS 5, qui utilise par défaut des i-noeuds de 128 octets. Et bien entendu, le grub de CentOS ne sait pas lire les systèmes de fichiers «à la Fedora».
Y'a des jours, on est content de voir arriver le week-end.