Problème de boot avec Grub

Problème de boot avec Grub - Installation - Linux et OS Alternatifs

Marsh Posté le 11-10-2013 à 17:18:00    

Bonjour,
 
Suite à la restauration du machine virtuelle vmware sur lequel est installé un Ubuntu 10.04 LTS
 
J'ai le message suivant au démarrage :  
 


error : no such disk
error : no such disk
grub rescue >


 
Quand je fais un ls dans l'invite de commande j'ai :


(hd0) (hd0,1) (hd1) (fd0)


 
Quand je fais ls (hd0) ou (hd0,1) j'ai l'erreur suivante :  


unknow filesystem


 
le /boot est en ext4 dans un LV LVM ci dessous la conf de grub (grub.cfg) récupéré via un iso cd.

#
# 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 $prefix/grubenv ]; then
  load_env
fi
set default="0"
if [ ${prev_saved_entry} ]; then
  set saved_entry=${prev_saved_entry}
  save_env saved_entry
  set prev_saved_entry=
  save_env prev_saved_entry
  set boot_once=true
fi
 
function savedefault {
  if [ -z ${boot_once} ]; then
    saved_entry=${chosen}
    save_env saved_entry
  fi
}
 
function recordfail {
  set recordfail=1
  if [ -n ${have_grubenv} ]; then if [ -z ${boot_once} ]; then save_env recordfail; fi; fi
}
insmod lvm
insmod ext2
set root='(rootvg-lv_usr)'
search --no-floppy --fs-uuid --set d2a61b75-8ef6-4527-9bfc-1daec63c0f03
if loadfont /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
insmod lvm
insmod ext2
set root='(rootvg-lv_boot)'
search --no-floppy --fs-uuid --set 430a76b5-3d70-4e22-88f7-de034840b52f
set locale_dir=($root)/grub/locale
set lang=C.UTF-8
insmod gettext
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 ###
set menu_color_normal=white/black
set menu_color_highlight=black/light-gray
### END /etc/grub.d/05_debian_theme ###
 
### BEGIN /etc/grub.d/10_linux ###
menuentry 'Ubuntu, with Linux 2.6.32-28-server' --class ubuntu --class gnu-linux --class gnu --class os {
        recordfail
        insmod lvm
        insmod ext2
        set root='(rootvg-lv_boot)'
        search --no-floppy --fs-uuid --set 430a76b5-3d70-4e22-88f7-de034840b52f
        linux   /vmlinuz-2.6.32-28-server root=/dev/mapper/rootvg-lv_root ro   quiet
        initrd  /initrd.img-2.6.32-28-server
}
menuentry 'Ubuntu, with Linux 2.6.32-28-server (recovery mode)' --class ubuntu --class gnu-linux --class gnu --class os {
        recordfail
        insmod lvm
        insmod ext2
        set root='(rootvg-lv_boot)'
        search --no-floppy --fs-uuid --set 430a76b5-3d70-4e22-88f7-de034840b52f
        echo    'Loading Linux 2.6.32-28-server ...'
        linux   /vmlinuz-2.6.32-28-server root=/dev/mapper/rootvg-lv_root ro single
        echo    'Loading initial ramdisk ...'
        initrd  /initrd.img-2.6.32-28-server
}
### END /etc/grub.d/10_linux ###
 
### BEGIN /etc/grub.d/20_memtest86+ ###
menuentry "Memory test (memtest86+)" {
        insmod lvm
        insmod ext2
        set root='(rootvg-lv_boot)'
        search --no-floppy --fs-uuid --set 430a76b5-3d70-4e22-88f7-de034840b52f
        linux16 /memtest86+.bin
}
menuentry "Memory test (memtest86+, serial console 115200)" {
        insmod lvm
        insmod ext2
        set root='(rootvg-lv_boot)'
        search --no-floppy --fs-uuid --set 430a76b5-3d70-4e22-88f7-de034840b52f
        linux16 /memtest86+.bin console=ttyS0,115200n8
}
### END /etc/grub.d/20_memtest86+ ###
 
### BEGIN /etc/grub.d/30_os-prober ###
if [ ${timeout} != -1 ]; then
  if keystatus; then
    if keystatus --shift; then
      set timeout=-1
    else
      set timeout=0
    fi
  else
    if sleep --interruptible 3 ; then
      set timeout=0
    fi
  fi
fi
### 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 ###


 
J'ai essayé pas mal de choses mais rien n'y fait je n'arrive pas a booter sur cette machine, si vous avez des idées je suis preneur.
 
:jap:


---------------
Never f**k with your systems administrator. Why? Because they know what you do with all that free time! |?? | SAVE Jericho !
Reply

Marsh Posté le 11-10-2013 à 17:18:00   

Reply

Marsh Posté le 11-10-2013 à 17:44:02    

J'ai essayé la manip suivante en bootant avec un live cd :
 


mount /dev/rootvg/lv_root /mnt
mount /dev/rootvg/lv_boot /mnt/boot
mount /dev/rootvg/lv_usr /mnt/usr
mount --bind /dev /mnt/dev
mount --bind /proc /mnt/proc  
mount --bind /sys /mnt/sys
chroot /mnt
 
root@lubuntu:/# grub-install  /dev/sda
/usr/sbin/grub-probe: error: cannot find a device for /boot/grub (is /dev mounted?).
No path or device is specified.
Try `/usr/sbin/grub-probe --help' for more information.
Auto-detection of a filesystem module failed.
Please specify the module with the option `--modules' explicitly.
 
root@lubuntu:/# grub-install --modules=lvm,ext2 /dev/sda
/usr/sbin/grub-probe: error: cannot find a device for /boot/grub (is /dev mounted?).
No path or device is specified.
Try `/usr/sbin/grub-probe --help' for more information.
No path or device is specified.
Try `/usr/sbin/grub-probe --help' for more information.
No path or device is specified.
Try `/usr/sbin/grub-probe --help' for more information.
No path or device is specified.
Try `/usr/sbin/grub-probe --help' for more information.
You attempted a cross-disk install, but the filesystem containing /boot/grub does not support UUIDs.
root@lubuntu:/#
 


 
pour information :


 fdisk -l /dev/sda
 
Disk /dev/sda: 48.3 GB, 48318382080 bytes
255 heads, 63 sectors/track, 5874 cylinders, total 94371840 sectors
Units = sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disk identifier: 0x00039d7f
 
   Device Boot      Start         End      Blocks   Id  System
/dev/sda1   *        2048    94369791    47183872   8e  Linux LVM
 


---------------
Never f**k with your systems administrator. Why? Because they know what you do with all that free time! |?? | SAVE Jericho !
Reply

Marsh Posté le 12-10-2013 à 09:21:01    

L'UUID de partition est bon ?
Parce que selon ta méthode de restauration ptete qu'il a changé ?

Message cité 1 fois
Message édité par e_esprit le 12-10-2013 à 09:21:10

---------------
Ce n'est point ma façon de penser qui a fait mon malheur, c'est celle des autres.
Reply

Marsh Posté le 12-10-2013 à 12:19:43    

Problème de kernel et d'initram et problème de grub en auto qui détecte pas ta partoche.
 
Commence par installer grub a la mano et pas en auto, et créer un initram custom. Si tu ne sais pas créer un initram custom, monte ton /boot hors LVM.
En principe on évite de coller /boot dans un LVM, ça évite BEAUCOUP d'ennuis :)

Reply

Marsh Posté le 14-10-2013 à 10:14:31    

e_esprit a écrit :

L'UUID de partition est bon ?
Parce que selon ta méthode de restauration ptete qu'il a changé ?


 
L'UUID est le bon j'ai vérifié.
 

MysterieuseX a écrit :

Problème de kernel et d'initram et problème de grub en auto qui détecte pas ta partoche.
 
Commence par installer grub a la mano et pas en auto, et créer un initram custom. Si tu ne sais pas créer un initram custom, monte ton /boot hors LVM.
En principe on évite de coller /boot dans un LVM, ça évite BEAUCOUP d'ennuis :)


 
Tu veux dire quoi par installer grub a la mano (compilation ? sans passer par apt ?)
Le /boot LVM c'est a priori par défaut sur Ubuntu now :o  
 
Merci pour vos réponses


---------------
Never f**k with your systems administrator. Why? Because they know what you do with all that free time! |?? | SAVE Jericho !
Reply

Marsh Posté le 14-10-2013 à 10:32:26    

Ben tu fait pas grub-install /dev/machinchose mais
tu passe par la cli de grub pour valider les chemins comme grub les vois

Reply

Marsh Posté le 14-10-2013 à 13:43:59    

Et ton device.map il ressemble à quoi ?


---------------
Ce n'est point ma façon de penser qui a fait mon malheur, c'est celle des autres.
Reply

Marsh Posté le 14-10-2013 à 14:24:07    

MysterieuseX a écrit :

Ben tu fait pas grub-install /dev/machinchose mais
tu passe par la cli de grub pour valider les chemins comme grub les vois


 
Marche pas justement le grub-install (je vais copier le message d erreur)
 

e_esprit a écrit :

Et ton device.map il ressemble à quoi ?


 
Il n'existe pas ... je vais essayer de le régénérer


---------------
Never f**k with your systems administrator. Why? Because they know what you do with all that free time! |?? | SAVE Jericho !
Reply

Marsh Posté le 14-10-2013 à 14:40:56    

Le_Tolier a écrit :


 
Marche pas justement le grub-install (je vais copier le message d erreur)
 


 
Relit, avec le doigt ;)

Reply

Marsh Posté le 14-10-2013 à 15:31:17    

MysterieuseX a écrit :

 

Relit, avec le doigt ;)

 

La seule cli que j'arrive a avoir c'est grub rescue et la j'ai pas trop de commande ...

 

http://reho.st/self/1fff9f1c1b18319795d2e9ffad680ede1935a40d.png

 

Mais je penses pas que tu parles de cette cli là. Qd je boot en iso j'ai pas de grub cli je vais creuser un peu plus

 

Edit: j'ai regenere le device.map rien changé et il a l air standard


Message édité par Le_Tolier le 14-10-2013 à 15:31:49

---------------
Never f**k with your systems administrator. Why? Because they know what you do with all that free time! |?? | SAVE Jericho !
Reply

Marsh Posté le 14-10-2013 à 15:31:17   

Reply

Marsh Posté le 14-10-2013 à 16:46:20    

commence par faire dans grub :
root (hd0,x) (ou x correspond a ta partoche /boot)
puis :
find /boot/grub/stage1 (ou tout autre fichier que tu connais existant dans /boot ayant rapport a ton initramfs ou ton kernel)
puis :
setup (hd0) ( pour installer grub sur le MBR)
ou :
setup (hd0,x) (pour installer grub sur la partoche /boot mais faut obligatoirement chainloader)
 
Au besoin, faire les /mnt relatifs a tes partoches, puisque dans la cli de grub, tu ne peu pas monter des partoches

Message cité 1 fois
Message édité par MysterieuseX le 14-10-2013 à 16:46:52
Reply

Marsh Posté le 14-10-2013 à 17:02:25    

MysterieuseX a écrit :

commence par faire dans grub :
root (hd0,x) (ou x correspond a ta partoche /boot)
puis :
find /boot/grub/stage1 (ou tout autre fichier que tu connais existant dans /boot ayant rapport a ton initramfs ou ton kernel)
puis :
setup (hd0) ( pour installer grub sur le MBR)
ou :
setup (hd0,x) (pour installer grub sur la partoche /boot mais faut obligatoirement chainloader)
 
Au besoin, faire les /mnt relatifs a tes partoches, puisque dans la cli de grub, tu ne peu pas monter des partoches


 
Le truc c est que je vois pas comment aller en cli GRUB, j'ai que la cli GRUB RESCUE qui ne permet de réaliser ce que tu dis  
 
http://hfr-rehost.dev.syn.fr/self/f33b6c5bfd48d9c3461a9b1fbd2c07bcb9cd6f06.png
 
Via un linux démarré depuis un ISO je vois pas comment lancé la cli GRUB


---------------
Never f**k with your systems administrator. Why? Because they know what you do with all that free time! |?? | SAVE Jericho !
Reply

Marsh Posté le 14-10-2013 à 17:05:29    

en rentrant "grub" tout simplement dans ton shell o_O

Reply

Marsh Posté le 14-10-2013 à 17:13:07    

Bon, on va reprendre dès le début va, parce que visiblement ... xD
Commence par booter ta VM sur un liveCD
 
Tu fait ouvre un terminal dans lequel tu commence par faire un  :  
apt-get install lvm2 (pour installer LVM sur ton live CD)
ensuite tu va chercher les noms de volumes avec un :
vgdisplay
 
Quand tu saura là, je te dirai quoi faire pour la suite :)

Message cité 1 fois
Message édité par MysterieuseX le 14-10-2013 à 17:13:31
Reply

Marsh Posté le 14-10-2013 à 17:19:48    

Voir même plus "simple", tu reprend la procédure que t'a fait au dessus avec le live cd, mais au lieu de faire un grub-install, tu lance la cli de grub en fesant "sudo grub", tu lance les commandes que j'ai mise dans le post avant et voilà :)

Reply

Marsh Posté le 14-10-2013 à 17:25:14    

MysterieuseX a écrit :

Bon, on va reprendre dès le début va, parce que visiblement ... xD
Commence par booter ta VM sur un liveCD
 
Tu fait ouvre un terminal dans lequel tu commence par faire un  :  
apt-get install lvm2 (pour installer LVM sur ton live CD)
ensuite tu va chercher les noms de volumes avec un :
vgdisplay
 
Quand tu saura là, je te dirai quoi faire pour la suite :)


 
Je suis pas le spécialiste de GRUB soit :-)  
 
mais taper grub dans un shell j'avais déjà essayé :-)  
 
Par défaut dans le live Cd la cli grub est pas installé mais les utilitaires grub-* oui ...  
anyway j'ai installé grub  
LVM est installé par défaut par contre  
 
Ci dessous la liste des lv
http://hfr-rehost.dev.syn.fr/self/9900f807c6e055d7fa2f3327bce3106cfd71c80e.png
 
La les quelques commandes GRUB que j'ai passé :  
http://hfr-rehost.dev.syn.fr/self/2e158bbb09585a78a28bcca1a86aee990312e65d.png


---------------
Never f**k with your systems administrator. Why? Because they know what you do with all that free time! |?? | SAVE Jericho !
Reply

Marsh Posté le 14-10-2013 à 17:42:22    

dans ton livecd tu fait donc :
mount /dev/rootvg/lv_root /mnt  
mount /dev/rootvg/lv_boot /mnt/boot  
mount /dev/rootvg/lv_usr /mnt/usr  
mount --bind /dev /mnt/dev  
mount --bind /proc /mnt/proc  
mount --bind /sys /mnt/sys  
chroot /mnt  
 
puis dans ton chroot tu fait :  
grub
 
puis dans la cli grub tu fait :
root (hd0,0)
setup (hd0)
 
edit : monter usr n'est pas nécessaire :)

Message cité 1 fois
Message édité par MysterieuseX le 14-10-2013 à 17:45:40
Reply

Marsh Posté le 14-10-2013 à 18:00:11    

MysterieuseX a écrit :

dans ton livecd tu fait donc :
mount /dev/rootvg/lv_root /mnt  
mount /dev/rootvg/lv_boot /mnt/boot  
mount /dev/rootvg/lv_usr /mnt/usr  
mount --bind /dev /mnt/dev  
mount --bind /proc /mnt/proc  
mount --bind /sys /mnt/sys  
chroot /mnt  
 
puis dans ton chroot tu fait :  
grub
 
puis dans la cli grub tu fait :
root (hd0,0)
setup (hd0)
 
edit : monter usr n'est pas nécessaire :)


 
Merci j'avais déjà tenter des manip similaire mais sans succès ..  
 
J'ai recommencé en suivant scrupeuleusement tes tuyaux (la je suis dans le chroot):  
 
http://hfr-rehost.dev.syn.fr/self/7fd364fe1ade0c332bc0675c177061888e4e78b5.png
 
http://hfr-rehost.dev.syn.fr/self/a6ed491a2dad4723573f7b3e7a7f55c6b7a97e8b.png
 
Hélas ce marche pas :-(


---------------
Never f**k with your systems administrator. Why? Because they know what you do with all that free time! |?? | SAVE Jericho !
Reply

Marsh Posté le 14-10-2013 à 18:06:00    

J'ai refait une tentative sur un seul screen ...  
 
http://hfr-rehost.dev.syn.fr/self/40714f629c68ab04f10883474f0a322d7278c289.png


---------------
Never f**k with your systems administrator. Why? Because they know what you do with all that free time! |?? | SAVE Jericho !
Reply

Marsh Posté le 14-10-2013 à 18:32:16    

Ok, grub arrive pas a retrouver ses petits donc, on va passer par une définition préalable du DD sur lequel tu veux l'installer.
Juste après avoir lancé le chroot tu fait :
grep -v rootfs /proc/mounts > /etc/mtab
pour créer ta mountable de ton chroot puis :
echo "(hd0) /dev/rootvg" >> /boot/grub/device.map
pour renseigner a grub que "hd0" c'est un lecteur virtuel et qu'il aille pas chercher a monter /dev/sda a la place qui correspond a rien.
Puis tu refait la manip :
root (hd0,0)
setup (hd0)
 
edit voilà l'explications ici, de se que tu veux et de se que fait grub : http://unix.stackexchange.com/ques [...] ner-for-vm


Message édité par MysterieuseX le 14-10-2013 à 18:45:53
Reply

Marsh Posté le 15-10-2013 à 11:02:49    

Ca marche pas non plus même erreur ...  
 
Je penses que c est vraiment le volume LVM qui le fait chier, quand il dit : "unknow partiton signature"
 
http://hfr-rehost.dev.syn.fr/self/d0198c655d7c38dd13a2506da8a80331783881e9.png


---------------
Never f**k with your systems administrator. Why? Because they know what you do with all that free time! |?? | SAVE Jericho !
Reply

Marsh Posté le 17-10-2013 à 11:10:16    

Le_Tolier a écrit :

Ca marche pas non plus même erreur ...  
 
Je penses que c est vraiment le volume LVM qui le fait chier, quand il dit : "unknow partiton signature"
 
http://hfr-rehost.dev.syn.fr/self/ [...] 3881e9.png


Tu veux reprendre le sujet ou tu laisse tomber ta VM ?

Reply

Marsh Posté le 17-10-2013 à 12:51:22    

Je continue de chercher en tache de fond j'aimerai bien comprendre l'origine du problème.
 
J'ai ce problème qu'avec cette VM et j'ai des sauvegardes donc je craint pas grand chose, mais j'aurai bien vouli trouver une solution pour la gloire.
 
Peut être à coup de dd pour prendre un mbr sain du VM et le copie sur celle la ?


---------------
Never f**k with your systems administrator. Why? Because they know what you do with all that free time! |?? | SAVE Jericho !
Reply

Marsh Posté le 17-10-2013 à 13:36:46    

C'est quoi comme VMware qui tourne ?
Quelles params ? (emul EFI d'activée ?, Emul HDD et tout le bazar ?)
Quelle version de grub ? (grub2 ou legacy ?)

Reply

Marsh Posté le 17-10-2013 à 13:48:39    

Vu le fichier de conf, c'est du grub2.


---------------
Ce n'est point ma façon de penser qui a fait mon malheur, c'est celle des autres.
Reply

Marsh Posté le 17-10-2013 à 14:41:33    

Grub2
Vmware 5.0, pas d'EFI en fait c'est une conf tt a fait standard, j'ai a peu près 200 autres VMs configuré pareil et j'ai pas le problème.


---------------
Never f**k with your systems administrator. Why? Because they know what you do with all that free time! |?? | SAVE Jericho !
Reply

Marsh Posté le 17-10-2013 à 15:36:49    

Repart d'un backup "propre" puis boot sur liveCD et lance ton système en chroot.
 
ensuite tu fait un  

Citation :

echo "GRUB_PRELOAD_MODULES=lvm" >> /etc/default/grub


Pour dire a grub de charger son module lvm
et ensuite essaye un

Citation :

grub-install /dev/rootvg

Reply

Marsh Posté le 17-10-2013 à 15:38:40    

J'ai un fait un snapshot de la VM avant de la bidouiller de rollback a chaque   nouvelle tentative.
 
Je vais essayer cette méthode.


---------------
Never f**k with your systems administrator. Why? Because they know what you do with all that free time! |?? | SAVE Jericho !
Reply

Marsh Posté le 17-10-2013 à 15:40:52    

Le_Tolier a écrit :

J'ai un fait un snapshot de la VM avant de la bidouiller de rollback a chaque   nouvelle tentative.
 
Je vais essayer cette méthode.


J'ai oubliée un update-grub juste après la première commande :x

Reply

Marsh Posté le    

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed