[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: Récupération du MBR (/boot sur un hdd ide simple, mais racine / du système sur un raid 1 logiciel !)



Salut,

une méthode assez simple est de monter tes partitions une a une. Apparement, tu sais lister ce qu'il y a sur le disque, donc tu dois etre sur un autre système Linux.

Tu montes tes partitions dans /mnt par exemple, en commencant par /, /var, /usr, /boot, etc tout depend de tes partitions.

Donc, tu auras dans /mnt ton systeme.

Ensuite, chroot:

# chroot /mnt

Hop, la si t'a tout bien monté, tu vas te retrouver comme si tu etais sur ton ancien système. Maintenant, quand tu lances une commande, c'est par rapport a ce systeme.

Donc tu peux relancer les manips avec Grub (qui semble etre ton boot loader). C'est assez simple avec Grub (encore avec lilo: lilo -v). Mais je ne sais plus exactement comment faire, mais c'est 3 petites lignes ... un tit coup de google est c'est ok !

Bon courrage.

Florent Fossard wrote:
Bonjour


En voulant cloner mon disque dur contenant la partition /boot, j'ai fais une fausse manip et je l'ai formaté :/
J'ai pu restaurer les fichiers à partir de l'autre disque dur, mais pas le MBR, donc évidemment ca ne démarre pas.

Tout d'abord quelques détails sur la configuration:
- debian sarge, noyau 2.6.13.4 contenant tous les pilotes qui vont bien, le support du raid logiciel, ca fonctionnait impec.

- La racine / du système est sur un raid 1 logiciel de deux disques durs scsi, raid crée précédemment à l'installation de debian, avec mdadm. Il est vu par le système en /dev/md0

- Le dossier /boot est sur une unique partition sur un disque dur ide simple (une compact-flash sur adaptateur ide), sans raid, c'est ce disque dur qui est spécifié en périphérique de boot dans le bios. Il est par le système comme /dev/hdc, et la partition est /dev/hdc1.

- J'ai un hdd 40Go disponible (en /dev/hda) pour les manipulations si besoin.



Voici ce qui de trouve actuellement sur le disque ide:
root@0[knoppix]# ll /mnt/hdc1/
total 14964
lrwxrwxrwx  1 root root      19 Oct 17 08:07 System.map -> System.map-2.6.13.4
-rw-r--r--  1 root root 1227998 Oct 17 09:25 System.map-2.6.13.4
-rw-r--r--  1 root root 1218002 Oct 17 07:37 System.map-2.6.13.4.old
-rw-r--r--  1 root root  865733 May 19  2005 System.map-2.6.8-2-386
lrwxrwxrwx  1 root root      15 Oct 17 08:07 config -> config-2.6.13.4
-rw-r--r--  1 root root   38493 Oct 17 09:25 config-2.6.13.4
-rw-r--r--  1 root root   38355 Oct 17 07:37 config-2.6.13.4.old
-rw-r--r--  1 root root   55809 May 19  2005 config-2.6.8-2-386
drwxr-xr-x  2 root root    1024 Dec  6 01:15 grub
-rw-r--r--  1 root root 1290240 Oct 17 09:26 initrd-2.6.13.4.img
-rw-r--r--  1 root root 4567040 Oct 16 18:58 initrd.img-2.6.8-2-386
drwxr-xr-x  2 root root   12288 Oct 16 18:33 lost+found
lrwxrwxrwx  1 root root      16 Oct 17 08:07 vmlinuz -> vmlinuz-2.6.13.4
-rw-r--r--  1 root root 2433947 Oct 17 09:24 vmlinuz-2.6.13.4
-rw-r--r--  1 root root 2397800 Oct 17 07:37 vmlinuz-2.6.13.4.old
-rw-r--r--  1 root root 1097419 May 19  2005 vmlinuz-2.6.8-2-386


Contenu du dossier grub:
root@0[knoppix]# ll /mnt/hdc1/grub/
total 168
-rw-r--r--  1 root root     45 Oct 16 19:00 device.map
-rw-r--r--  1 root root   7776 Dec  6 00:32 e2fs_stage1_5
-rw-r--r--  1 root root   7504 Dec  6 00:32 fat_stage1_5
-rw-r--r--  1 root root   8320 Dec  6 00:32 jfs_stage1_5
-rw-r--r--  1 root root   3827 Oct 17 09:25 menu.lst
-rw-r--r--  1 root root   3827 Oct 17 09:25 menu.lst~
-rw-r--r--  1 root root   7008 Dec  6 00:32 minix_stage1_5
-rw-r--r--  1 root root   9216 Dec  6 00:32 reiserfs_stage1_5
-rw-r--r--  1 root root    512 Dec  6 00:32 stage1
-rw-r--r--  1 root root 108168 Dec  6 00:32 stage2
-rw-r--r--  1 root root   9288 Dec  6 00:32 xfs_stage1_5


Le fichier menu.lst :
root@0[knoppix]# cat /mnt/hdc1/grub/menu.lst

title           Debian GNU/Linux, kernel 2.6.13.4 Default
root            (hd0,0)
kernel          /vmlinuz root=/dev/md0 ro
savedefault
boot

title           Debian GNU/Linux, kernel 2.6.13.4 Default (recovery mode)
root            (hd0,0)
kernel          /vmlinuz root=/dev/md0 ro single
savedefault
boot

title           Debian GNU/Linux, kernel 2.6.13.4.old
root            (hd0,0)
kernel          /vmlinuz-2.6.13.4.old root=/dev/md0 ro
savedefault
boot

title           Debian GNU/Linux, kernel 2.6.13.4.old (recovery mode)
root            (hd0,0)
kernel          /vmlinuz-2.6.13.4.old root=/dev/md0 ro single
savedefault
boot

title           Debian GNU/Linux, kernel 2.6.13.4
root            (hd0,0)
kernel          /vmlinuz-2.6.13.4 root=/dev/md0 ro
savedefault
boot

title           Debian GNU/Linux, kernel 2.6.13.4 (recovery mode)
root            (hd0,0)
kernel          /vmlinuz-2.6.13.4 root=/dev/md0 ro single
savedefault
boot

title           Debian GNU/Linux, kernel 2.6.8-2-386
root            (hd0,0)
kernel          /vmlinuz-2.6.8-2-386 root=/dev/md0 ro
initrd          /initrd.img-2.6.8-2-386
savedefault
boot

title           Debian GNU/Linux, kernel 2.6.8-2-386 (recovery mode)
root            (hd0,0)
kernel          /vmlinuz-2.6.8-2-386 root=/dev/md0 ro single
initrd          /initrd.img-2.6.8-2-386
savedefault
boot
### END DEBIAN AUTOMAGIC KERNELS LIST




J'ai tenté la manipulation décrite ici (http://wiki.debian.org/GrubRecover?highlight=%28grub%29), à savoir démarrer en mode rescue avec un cd de debian ("rescue root=/dev/md0"), mais comme la racine du système est sur le raid, j'ai l'erreur:
"Kernel panic: VFS: Unable to mount root fs on 09:00"


Ici ils proposent une manipulation pour créer une disquette avec un noyau dessus, c'est assez complexe et je ne suis pas sûr que ca résolve mon problème...
http://www.ibiblio.org/pub/Linux/docs/HOWTO/translations/fr/html-1page/Bootdisk-HOWTO.html#troubleshooting

"Si vous voyez un message du genre :
Kernel panic: VFS: Unable to mount root fs on XX:YY
C'est un problème courant qui ne peut avoir que quelques causes. Tout d'abord, cherchez le périphérique XX:YY dans la liste de codes des périphériques dans le fichier /usr/src/linux/Documentation/devices.txt ; s'agit-il du bon périphérique racine ? Si ce n'est pas le bon, vous n'avez sans doute pas lancé rdev -R, ou alors sur la mauvaise image. Si le code du périphérique est correct, vérifiez attentivement quels gestionnaires de périphériques ont été compilés dans le noyau. Assurez-vous que le support pour le lecteur de disquettes, les disques mémoires et le système de fichiers ext2 sont bien inclus ; "




J'ai donc gravé une knoppix (la plus récente disponible), après quelques manipulations de remontage j'ai pu faire un grub-install:

root@0[knoppix]# grub-install /dev/hdc
Due to a bug in xfs_freeze, the following command might produce a segmentation
fault when /boot/grub is not in an XFS filesystem. This error is harmless and
can be ignored.
xfs_freeze: specified file ["/boot/grub"] is not on an XFS filesystem
Installation finished. No error reported.
This is the contents of the device map /boot/grub/device.map.
Check if this is correct or not. If any of the lines is incorrect,
fix it and re-run the script `grub-install'.
(hd0)   /dev/hdc
(hd1)   /dev/sda
(hd2)   /dev/sdb




Je pense que je n'ai pas fait tout ce qu'il faut, au boot j'ai bien un mbr, mais ca m'affiche juste "GRUB " et rien d'autre, ca bloque :(


En écrivant ce mail, je viens de penser à une solution, démarrer en mode rescue sur un des disques du raid (sans raid, mais si la partition est de type raid autodetect, est-ce que ca va marcher ?), avec le raid en fault, et rajouter le deuxieme disque dans le raid une fois le problème résolu, et syncroniser... ca vous semble utilisable comme solution?


Est-ce que vous pouvez m'aider à avancer dans la résolution du problème ? (il y'a beaucoup d'aide sur la récupération du mbr avec grub-install, mais avec le raid pour le système, c'est moins simple)

MERCI :)

Florent




Reply to: