Vous êtes ici : Accueil » français » Solution : the superblock has unsupported feature

Solution : the superblock has unsupported feature

D 4 décembre 2006     A Benjamin Sonntag    


Cette nuit, lors de la réinstallation d’un serveur de backup totalement hors service, je suis tombé sur le message d’erreur suivant lors du démarrage de Linux (c’est une Debian Sarge, mais cela pourrait le faire tout aussi bien avec n’importe quel Linux ...)

the superblock has unsupported feature (0400400)

et là c’est le drame, car il n’arrive donc pas à monter la partition de démarrage (/dev/sda1) et plante immanquablement.

J’ai fini par booter sur un CD Ubuntu, et je me dis : lançons un e2fsck sur cette partition ...

oui, sauf que e2fsck pense que la partition est d’une version plus récente, puisque le superblock annonce des fonctionnalités (features) non gérées par cette version de linux. Il refuse donc catégoriquement de me monter ou de toucher à cette partition.

En fait, il advient que le superblock est corrompu, et e2fsck me propose en fait :

run e2fsck -b 8193 /dev/sda1

Le but étant de se servir de la copie de secours du superblock. Ni une ni deux, je m’exécute, mais là e2fsck me répond qu’il ne trouve pas le magic (le tas d’octet qui identifie un superblock) : en fait 8193 n’est qu’un exemple, il faut trouver l’emplacement réel du superblock de cette partition.

Pour cela, je me suis souvenu de l’option -n de mkfs.ext3 qui permet de tout faire (formattage de la partition) sauf l’écriture sur le disque ! ... c’est une "no option" quoi ...

je vérifie sur la man mkfs.ext3 et là, ô miracle, que lis-je :

-n     causes mke2fs to not actually create a filesystem, but display what it would do if it were to create a filesystem. This can be used to determine the location of the backup superblocks for a particular filesystem, so long  as  the mke2fs parameters that were passed when the filesystem was originally created are used again.  (With the -n option added, of course!)

ouf ! let’s go :

mkfs.ext3 /dev/sda1 -n
... blablabla ...
Superblock backups stored on blocks:
       32768, 98304, 163840, 229376, 294912, 819200, 884736, 1605632, 2654208,
       4096000, 7962624, 11239424, 20480000, 23887872

yes !

e2fsck /dev/sda1 -b 32768

et zou ! corrigé (et 120 Go de données de sauvées ...)