#1 Le 18/11/2009, à 11:32
- jean-louis67
[résolu] Grub error après insertion d'une nouvelle partition
Bonjour
J'ai une installation avec double boot Windows XP/Ubuntu 9.10
J'ai créé une nouvelle partition sous Windows, destinée à être utilisée par Ubuntu.
Cette partition se trouvant avant la partition hébergeant /boot/grub, j'ai l'erreur suivante au démarrage:
Grub loading
error: file not found
grube rescue>
En appliquant les conseils suivants trouvés dans un autre post de ce forum (http://forum.ubuntu-fr.org/viewtopic.php?pid=3068453) , je parviens néanmoins à démarrer:
set prefix=(hd0,7)/boot/grub
insmod sh
set root=(hd0,7)/boot/grub
insmod configfile
configfile (hd0,7)/boot/grub/grub.cfg
Une fois dans ubuntu, j'essaye de mettre à jour le MBR de la manière suivante mais n'y parviens pas:
sudo mount /dev/sda7 /mnt
ls /mnt
bin dev home lib32 media proc selinux tmp vmlinuz
boot etc initrd.img lib64 mnt root srv usr
cdrom extension lib lost+found opt sbin sys varsudo grub-install --root-directory=/mnt /dev/sda
Au redémarrage, la situation n'a pas évolué (file not found)
Merci d'avance de votre aide,
Jean-Louis
Pour info, voici ce qu'affiche fdisk -l
$ sudo fdisk -l
Disque /dev/sda: 160.0 Go, 160041885696 octets
240 têtes, 63 secteurs/piste, 20673 cylindres
Unités = cylindres de 15120 * 512 = 7741440 octets
Identifiant de disque : 0x03bd2869Périphérique Amorce Début Fin Blocs Id Système
/dev/sda1 * 1 6118 46252048+ 7 HPFS/NTFS
/dev/sda2 19319 20673 10243800 1c Cachée W95 FAT32 (LBA)
/dev/sda3 6119 19318 99786771+ f W95 Etendue (LBA)
/dev/sda5 6119 6823 5329737+ 7 HPFS/NTFS
/dev/sda6 13766 16602 21438711 83 Linux
/dev/sda7 16602 19199 19631398+ 83 Linux
/dev/sda8 19199 19318 899608+ 82 Linux swap / SolarisLes entrées de la table de partitions ne sont pas dans l'ordre du disque
Disque /dev/sdb: 500.1 Go, 500107862016 octets
255 têtes, 63 secteurs/piste, 60801 cylindres
Unités = cylindres de 16065 * 512 = 8225280 octets
Identifiant de disque : 0xcb4a53fbPériphérique Amorce Début Fin Blocs Id Système
/dev/sdb1 1 60801 488384001 7 HPFS/NTFS
Dernière modification par jean-louis67 (Le 20/11/2009, à 16:18)
Hors ligne
#2 Le 18/11/2009, à 13:37
- pipou24
Re : [résolu] Grub error après insertion d'une nouvelle partition
salut.
Dans ton cas, ce n'est pas le MBR qui doit etre réécrit, mais les fichiers de configuration de grub. demarre manuellement ubuntu puis :
sudo update-grub
ensuite :
cat /boot/grub/grub.cfg
doit te donner l'uuid de la partition qui contient /boot que tu peut verifier avec
sudo blkid | grep sda7
Non geek et fier de l'être. ㋡
Hors ligne
#3 Le 18/11/2009, à 14:16
- jean-louis67
Re : [résolu] Grub error après insertion d'une nouvelle partition
Bonjour,
Merci d'avoir pris le temps de t'intéresser à mon problème.
L'erreur se produit avant que le menu décrit dans le fichier grub.cfg ne soit affiché. Ce menu s'affiche lorsqu'on rentre la commande
configfile (hd0,7)/boot/grub/grub.cfg
sous le prompt grub rescue>
C'est pourquoi je pensais que le chemin vers la partition contenant grub.cfg dans le MBR était incorrect après l'insertion de la nouvelle partition.
Quoiqu'il en soit, une fois dans ubuntu, La commande sudo update-grub se déroule comme ceci:
Generating grub.cfg ...
Found Debian background: Hengwiller_automne_2008.tga
Found linux image: /boot/vmlinuz-2.6.31-14-generic
Found initrd image: /boot/initrd.img-2.6.31-14-generic
Found memtest86+ image: /boot/memtest86+.bin
Found Microsoft Windows XP Professional on /dev/sda1
done
la commande sudo blkid
affiche ceci:
/dev/sda1: UUID="4E286AD3286ABA1B" LABEL="WinXP_SP2" TYPE="ntfs"
/dev/sda2: LABEL="IBM_SERVICE" UUID="D76D-7B1B" TYPE="vfat"
/dev/sda5: UUID="509240B02342D504" LABEL="DATA" TYPE="ntfs"
/dev/sda6: LABEL="part1" UUID="854fd9c6-fbd2-40b9-b2c4-a329c1690d26" TYPE="ext4"
/dev/sda7: UUID="4f2da9b5-23d5-4b21-8a49-13c642c7ce86" TYPE="ext4"
/dev/sda8: UUID="6ecaa1c8-45cd-4f30-a116-1882908c3f1b" TYPE="swap"
/dev/sda9: LABEL="part2" UUID="f916cf76-b390-421d-9175-bc56667ea3a5" TYPE="ext4"
/dev/sda6 est une partition rajoutée il y a quelques jours, et /dev/sda9 celle rajoutée ce matin et à l'origine du problème.
/dev/sda7 est bien la partition contenant /boot/grub
Enfin, le contenu du fichier grub.cfg se trouve ci-dessous. Finalement, je ne vois pas quoi faire pour résoudre mon problème (j'ai bien vérifié qu'après update-grub, le problème persistait).
#
# DO NOT EDIT THIS FILE
#
# It is automatically generated by /usr/sbin/grub-mkconfig using templates
# from /etc/grub.d and settings from /etc/default/grub
#### BEGIN /etc/grub.d/00_header ###
if [ -s /boot/grub/grubenv ]; then
have_grubenv=true
load_env
fi
set default="0"
if [ ${prev_saved_entry} ]; then
saved_entry=${prev_saved_entry}
save_env saved_entry
prev_saved_entry=
save_env prev_saved_entry
fi
insmod ext2
set root=(hd0,7)
search --no-floppy --fs-uuid --set 4f2da9b5-23d5-4b21-8a49-13c642c7ce86
if loadfont /usr/share/grub/unicode.pf2 ; then
set gfxmode=640x480
insmod gfxterm
insmod vbe
if terminal_output gfxterm ; then true ; else
# For backward compatibility with versions of terminal.mod that don't
# understand terminal_output
terminal gfxterm
fi
fi
if [ ${recordfail} = 1 ]; then
set timeout=-1
else
set timeout=10
fi
### END /etc/grub.d/00_header ###### BEGIN /etc/grub.d/05_debian_theme ###
insmod ext2
set root=(hd0,7)
search --no-floppy --fs-uuid --set 4f2da9b5-23d5-4b21-8a49-13c642c7ce86
insmod tga
if background_image /boot/grub/Hengwiller_automne_2008.tga ; then
set color_normal=yellow/black
set color_highlight=white/black
else
set menu_color_normal=black/black
set menu_color_highlight=magenta/black
fi
### END /etc/grub.d/05_debian_theme ###### BEGIN /etc/grub.d/10_linux ###
menuentry "Ubuntu, Linux 2.6.31-14-generic" {
recordfail=1
if [ -n ${have_grubenv} ]; then save_env recordfail; fi
set quiet=1
insmod ext2
set root=(hd0,7)
search --no-floppy --fs-uuid --set 4f2da9b5-23d5-4b21-8a49-13c642c7ce86
linux /boot/vmlinuz-2.6.31-14-generic root=UUID=4f2da9b5-23d5-4b21-8a49-13c642c7ce86 ro splash vga=786 quiet splash
initrd /boot/initrd.img-2.6.31-14-generic
}
menuentry "Ubuntu, Linux 2.6.31-14-generic (recovery mode)" {
recordfail=1
if [ -n ${have_grubenv} ]; then save_env recordfail; fi
insmod ext2
set root=(hd0,7)
search --no-floppy --fs-uuid --set 4f2da9b5-23d5-4b21-8a49-13c642c7ce86
linux /boot/vmlinuz-2.6.31-14-generic root=UUID=4f2da9b5-23d5-4b21-8a49-13c642c7ce86 ro single splash vga=786
initrd /boot/initrd.img-2.6.31-14-generic
}
### END /etc/grub.d/10_linux ###### BEGIN /etc/grub.d/20_memtest86+ ###
menuentry "Memory test (memtest86+)" {
linux16 /boot/memtest86+.bin
}
menuentry "Memory test (memtest86+, serial console 115200)" {
linux16 /boot/memtest86+.bin console=ttyS0,115200n8
}
### END /etc/grub.d/20_memtest86+ ###### BEGIN /etc/grub.d/30_os-prober ###
menuentry "Microsoft Windows XP Professional (on /dev/sda1)" {
insmod ntfs
set root=(hd0,1)
search --no-floppy --fs-uuid --set 4e286ad3286aba1b
drivemap -s (hd0) ${root}
chainloader +1
}
### END /etc/grub.d/30_os-prober ###### BEGIN /etc/grub.d/40_custom ###
# This file provides an easy way to add custom menu entries. Simply type the
# menu entries you want to add after this comment. Be careful not to change
# the 'exec tail' line above.
### END /etc/grub.d/40_custom ###
Dernière modification par jean-louis67 (Le 19/11/2009, à 16:25)
Hors ligne
#4 Le 18/11/2009, à 15:04
- pipou24
Re : [résolu] Grub error après insertion d'une nouvelle partition
ok, je crois avoir compris :
sudo grub-install --root-directory=/mnt /dev/sda
tu inscrit dans le MBR de chercher dans /mnt, mais ce point de montage n'existe plus au redemarrage !
donc :
sudo grub-install /dev/sda
devrait fonctionner, sinon :
sudo grub-install --root-directory=/dev/sda7 /dev/sda ???
Non geek et fier de l'être. ㋡
Hors ligne
#5 Le 18/11/2009, à 15:29
- jean-louis67
Re : [résolu] Grub error après insertion d'une nouvelle partition
Oui , c'est ça!
Je crois que je suis preneur d'explications supplémentaires...
Tout d'abord, avant de faire la manipulation que tu as indiquée, je venais de constater que sous grub, la commande set indiquait:
root=(hd0,7)/mnt/boot/grub
Cela correspond tout à fait à ta déduction.
Cela venait certainement de ma commande précédente sudo grub-install --root-directory=/mnt /dev/sda. J'avais récupéré cette commande dans le post déjà cité et qui m'avait bien aidé à démarrer ubuntu "à la main".
Je ne sais pas bien pourquoi l'auteur a recommandé de monter /dev/sda7 sur mnt
Sans doute parce que la commande suivante (celle que tu as suggérée) ne fonctionne pas:
sudo grub-install --root-directory=/dev/sda7 /dev/sda
mkdir: ne peut créer le répertoire `/dev/sda7/boot': N'est pas un dossier
C'est bien la suivante qui a résolu le problème;
sudo grub-install /dev/sda
Si je comprends bien, grub-install récupère des informations dans grub.cfg, une fois ce fichier mis à jour par update-grub?
Auquel cas la bonne façon est donc bien:
sudo update-grub
sudo grub-install /dev/sda
Plutôt celle que j'avais trouvée dans le post
sudo grub-install --root-directory=/mnt /dev/sda
sudo update-grub
En tout cas merci beaucoup de ton aide rapide et efficace!
Hors ligne