Page 1 sur 1

[grub]comment booter directement sur lvm

Publié : sam. 19 nov. 2011, 23:11
par JeanMichel
Bonjour,

je veux ajouter sur une machine existante déjà en multiboot :
- Arch bien sûr
- et Lubuntu (oh le vilain !!!)

J'ai installé Arch sur une partition donnée à lvm
puis Lubuntu sur une partition normale

problème :
-je n'ai pas mis mon /boot d'Arch sur une partition à part hors lvm
-le wiki indique que c'est faisable avec grub2 http://wiki.archlinux.fr/LVM
- et il y a des indications ici : https://wiki.archlinux.org/index.php/Grub2#LVM

ce que j'ai fait:
!!!! sous Lubuntu que j'ai installé juste après Arch !!!! :

Code : Tout sélectionner

~$ sudo apt-get install lvm2
~$ sudo modprobe dm-mod
~$ sudo vgscan
  Reading all physical volumes.  This may take a while...
  Found volume group "mvg" using metadata type lvm2
~$ sudo vgchange -ay
  The link /dev/mvg/Vol1 should had been created by udev but it was not found. Falling back to direct link creation.
  The link /dev/mvg/Vol2 should had been created by udev but it was not found. Falling back to direct link creation.
  2 logical volume(s) in volume group "mvg" now active
puis

Code : Tout sélectionner

~$ sudo os-prober
/dev/sda1:Windows Recovery Environment (loader):Windows:chain
/dev/sda10:Ubuntu 11.04 (11.04):Ubuntu:linux
/dev/sda2:Windows 7 (loader):Windows1:chain
/dev/sda5:Ubuntu 11.04 (11.04):Ubuntu1:linux
/dev/sda9:Linux Mint Debian Edition (1):LinuxMint:linux
/dev/mapper/mvg-Vol1::Arch:linux
~$ sudo update-grub
Generating grub.cfg ...
Found linux image: /boot/vmlinuz-3.0.0-12-generic-pae
Found initrd image: /boot/initrd.img-3.0.0-12-generic-pae
Found linux image: /boot/vmlinuz-3.0.0-12-generic
Found initrd image: /boot/initrd.img-3.0.0-12-generic
Found memtest86+ image: /boot/memtest86+.bin
Found Windows Recovery Environment (loader) on /dev/sda1
Found Ubuntu 11.04 (11.04) on /dev/sda10
Found Windows 7 (loader) on /dev/sda2
Found Ubuntu 11.04 (11.04) on /dev/sda5
Found Linux Mint Debian Edition (1) on /dev/sda9
Found Arch on /dev/mapper/mvg-Vol1
done
~$ sudo grub-install /dev/sda
Installation finished. No error reported.

où j'en suis :
au démarrage, grub (1.99) voit bien Arch mais :

Code : Tout sélectionner

(...)
:: Triggering uevents...done
waiting 10 seconds for device /dev/mapper/mvg-Vol1
root device '/dev/mapper/mvg-Vol1'doesn't exist'
(etc)
bref, je n'arrive pas à charger Arch

mon grub.cfg me semble correct :

Code : Tout sélectionner

menuentry "Arch Linux (on /dev/mapper/mvg-Vol1)" --class gnu-linux --class gnu --class os {
	insmod lvm
	insmod part_msdos
	insmod ext2
	set root='(mvg-Vol1)'
	search --no-floppy --fs-uuid --set=root 20288f13-91b5-4007-9791-0c7047639656
	linux /boot/vmlinuz-linux root=/dev/mapper/mvg-Vol1 ro
	initrd /boot/initramfs-linux.img
}
menuentry "Arch Linux Fallback (on /dev/mapper/mvg-Vol1)" --class gnu-linux --class gnu --class os {
	insmod lvm
	insmod part_msdos
	insmod ext2
	set root='(mvg-Vol1)'
	search --no-floppy --fs-uuid --set=root 20288f13-91b5-4007-9791-0c7047639656
	linux /boot/vmlinuz-linux root=/dev/mapper/mvg-Vol1 ro
	initrd /boot/initramfs-linux-fallback.img
}
### END /etc/grub.d/30_os-prober ###
quelqu'un peut me dépanner ?

Re: [booter sur lvm]comment booter directement sur lvm avec

Publié : dim. 20 nov. 2011, 16:00
par JeanMichel
euh, ça n'inspire personne ... ?

Re: [booter sur lvm]comment booter directement sur lvm avec

Publié : dim. 20 nov. 2011, 16:26
par drs
t'as bien lvm2 dans les hooks de /etc/mkinitcpio.conf ?

Re: [booter sur lvm]comment booter directement sur lvm avec

Publié : lun. 21 nov. 2011, 15:29
par oktoberfest
Salut,

comme le suggère drs, il s'agit plutôt d'un problème de hooks.
Le message d'erreur que tu fournis montre clairement qu'Arch boote (il s'agit d'un message du script de l'initramfs d'Arch) mais que le noyau ne voit pas le volume LVM.

Re: [grub]comment booter directement sur lvm

Publié : jeu. 24 nov. 2011, 21:18
par JeanMichel
Merci des réponses.

J'ai fait des choses à partir de vos indications, mais ça ne fonctionne toujours pas :

1. ce que j'ai fait :
J'ai remplacé, dans mkinitcpio, en l'éditant depuis Lubuntu :

Code : Tout sélectionner

HOOKS="base udev autodetect pata scsi sata filesystems usbinput"
où il manque effectivement lvm2, par :

Code : Tout sélectionner

HOOKS="base udev autodetect pata scsi sata lvm2 filesystems usbinput"
2. la réponse que j'obtiens :

Code : Tout sélectionner

Decompressing Linux... Parsing ELF... done.
Booting the kernel.
:: starting udevd...
done.
:: running Hook [udev]
:: Triggering uevents...done
waiting 10 seconds for device /dev/mapper/mvg-Vol1
root device '/dev/mapper/mvg-Vol1'doesn't exist'
Attempting to create it
ERROR: unable to determine major/minor number of root device '/dev/mapper/mvg-Vol1'.
(quelques lignes)
sh: can't access tty; job control turned off
[ramfs/]#

j'ai essayé de mettre lvm2 à d'autres positions sur la ligne "HOOKS= ...", même résultat.

Re: [grub]comment booter directement sur lvm

Publié : ven. 25 nov. 2011, 00:05
par benjarobin
Il faut régénérer l'initframe en chroot, cela se ne sert à rien de juste éditer le fichier de configuration

Re: [grub]comment booter directement sur lvm

Publié : ven. 25 nov. 2011, 06:17
par drs
on va anticiper ton prochain post apres avoir regle le probleme du ramdisk :P

assure toi d'avoir:
USELVM="yes" # le defaut est "no"
dans /etc/rc.conf