[boot] kernel, device not present (résolu)

Questions et astuces concernant l'installation et la configuration d'archlinux
Répondre
Avatar de l’utilisateur
pascalp
Daikyu
Messages : 74
Inscription : sam. 14 juil. 2007, 18:06
Localisation : Utrecht
Contact :

[boot] kernel, device not present (résolu)

Message par pascalp »

Bonjour,

je galere avec grub2. Mon disque est partionne en gpt avec une partition bios de 1Mo.
grub est bien installe dans le mbr, je vois le menu
la sequence boot est bonne car je vois les 4 arches au boot.

Question, est-ce toujours grub a ce moment? j'en suis pas sur du coup ca simplifierai mes recherches google :)

A ce moment la j'ai une erreur pour monter / et le pc me donne la main avec ramfs.
J'ai essaye de faire mount /dev/sdc2 /newroot et j'ai une erreur device not present.

Si je fais un ls /dev/sdc* je vois bien /dev/sdc2 /newroot est aussi present. sdc2 est en ext4.
Dernière modification par pascalp le dim. 17 juil. 2011, 10:36, modifié 2 fois.
benjarobin
Maître du Kyudo
Messages : 16156
Inscription : sam. 30 mai 2009, 15:48
Localisation : Lyon

Re: [boot] grub2, device not present

Message par benjarobin »

Le kernel est lancé, mais celui ne doit surement pas trouvé la partition root : /
Tu devrait utiliser des UUID
Zsh | KDE | PC fixe : core i7, carte nvidia | Portable : Asus ul80vt
Titre d'un sujet : [Thème] Sujet (état)
Avatar de l’utilisateur
pascalp
Daikyu
Messages : 74
Inscription : sam. 14 juil. 2007, 18:06
Localisation : Utrecht
Contact :

Re: [boot] grub2, device not present

Message par pascalp »

j'utilise les uuids mais je pensais avoir fait une erreur de syntaxe. Une fois tout fixe je vais voir si je peux passer par les labels, c'est beaucoup plus clair que les uuid.
avi3000
Chu Ko Nu
Messages : 386
Inscription : dim. 19 juin 2011, 18:53
Localisation : dans le neuf trois

Re: [boot] kernel, device not present

Message par avi3000 »

Si tu postes ton grub.cfg, ton fstab, un ls -l /dev/disk/by-label et un ls -l /dev/disk/by-uuid, ça peut aider.
Avatar de l’utilisateur
pascalp
Daikyu
Messages : 74
Inscription : sam. 14 juil. 2007, 18:06
Localisation : Utrecht
Contact :

Re: [boot] kernel, device not present

Message par pascalp »

grub.cfg:
http://pastebin.archlinux.fr/433152

Code : Tout sélectionner

menuentry 'Arch Linux, with Linux vmlinuz26' --class archlinux --class gnu-linux --class gnu --class os {
	load_video
	set gfxpayload=keep
	insmod part_gpt
	insmod ext2
	set root='(hd0,gpt2)'
	search --no-floppy --fs-uuid --set=root 0e68f6f0-cce2-4e58-bc90-1b11b8f022ba
	echo	'Loading Linux vmlinuz26 ...'
	linux	/boot/vmlinuz26 root=/dev/disk/by-uuid/0e68f6f0-cce2-4e58-bc90-1b11b8f022ba ro  quiet
	echo	'Loading initial ramdisk ...'
	initrd	/boot/kernel26.img
}
fstab:

Code : Tout sélectionner

# <file system>        <dir>         <type>    <options>          <dump> <pass>
devpts                 /dev/pts      devpts    defaults            0      0
shm                    /dev/shm      tmpfs     nodev,nosuid        0      0

#/dev/cdrom             /media/cd   auto    ro,user,noauto,unhide   0      0
#/dev/dvd               /media/dvd  auto    ro,user,noauto,unhide   0      0
#/dev/fd0               /media/fl   auto    user,noauto             0      0

/dev/sdd1 swap swap defaults 0 0
LABEL=ssdhome /home ext4 defaults 0 1
LABEL=ssdroot / ext4 defaults 0 1
by-label:

Code : Tout sélectionner

[root@pascal pascal]# ls -l /dev/disk/by-label
total 0
lrwxrwxrwx 1 root root  9 14 juil. 22:29 ARCH_201005 -> ../../sr0
lrwxrwxrwx 1 root root 10 14 juil. 22:29 Réservé\x20au\x20système -> ../../sda1
lrwxrwxrwx 1 root root 10 14 juil. 22:29 \x2fboot -> ../../sdd2
lrwxrwxrwx 1 root root 10 14 juil. 22:29 cle -> ../../sde1
lrwxrwxrwx 1 root root 10 14 juil. 22:29 ssdhome -> ../../sdc3
lrwxrwxrwx 1 root root 10 14 juil. 22:29 ssdroot -> ../../sdc2
uuid

Code : Tout sélectionner

[root@pascal pascal]# ls -l /dev/disk/by-uuid 
total 0
lrwxrwxrwx 1 root root 10 14 juil. 22:29 0e68f6f0-cce2-4e58-bc90-1b11b8f022ba -> ../../sdc2
lrwxrwxrwx 1 root root 10 14 juil. 22:29 298eab02-1137-4390-9d72-1825026ce19b -> ../../sdd1
lrwxrwxrwx 1 root root 10 14 juil. 22:29 48e5352e-7d86-4bfe-b8b3-47597c3576c3 -> ../../sdd4
lrwxrwxrwx 1 root root 10 14 juil. 22:29 5AC05612C055F52B -> ../../sda1
lrwxrwxrwx 1 root root 10 14 juil. 22:29 5f937887-ba74-495a-8062-99383fbcc1e0 -> ../../sdd2
lrwxrwxrwx 1 root root 10 14 juil. 22:29 62013d7c-8a9b-4312-a1b7-1c1d37437114 -> ../../sdb3
lrwxrwxrwx 1 root root 10 14 juil. 22:29 B990-339A -> ../../sde1
lrwxrwxrwx 1 root root 10 14 juil. 22:29 DAE45880E4586135 -> ../../sda2
lrwxrwxrwx 1 root root 10 14 juil. 22:29 cb3850a8-2589-4797-9019-e53ef002bf9e -> ../../sdb2
lrwxrwxrwx 1 root root 10 14 juil. 22:29 cbe606d8-0964-49fa-b55d-e986b83fa17b -> ../../sdb5
lrwxrwxrwx 1 root root 10 14 juil. 22:29 d43998d9-a5bd-4f43-b9c0-176b79ee5d34 -> ../../sdc3
lrwxrwxrwx 1 root root 10 14 juil. 22:29 d8c30f8b-44b3-4f69-b88b-02bca3423a04 -> ../../sdb1
lrwxrwxrwx 1 root root 10 14 juil. 22:29 ebd245ce-3733-47b3-bec5-da7ce0ac98ff -> ../../sdd3
avi3000
Chu Ko Nu
Messages : 386
Inscription : dim. 19 juin 2011, 18:53
Localisation : dans le neuf trois

Re: [boot] kernel, device not present

Message par avi3000 »

avec les 2 modifications ci-dessous, ça devrait aller un peu mieux.
En cas de succès, on essayera ensuite de faire un joli grub bien clair.

grub: linux /boot/vmlinuz26 root=UUID=0e68f6f0-cce2-4e58-bc90-1b11b8f022ba ro quiet

Code : Tout sélectionner

menuentry 'Arch Linux, with Linux vmlinuz26' --class archlinux --class gnu-linux --class gnu --class os {
   load_video
   set gfxpayload=keep
   insmod part_gpt
   insmod ext2
   set root='(hd0,gpt2)'
   search --no-floppy --fs-uuid --set=root 0e68f6f0-cce2-4e58-bc90-1b11b8f022ba
   echo   'Loading Linux vmlinuz26 ...'
   linux   /boot/vmlinuz26 root=UUID=0e68f6f0-cce2-4e58-bc90-1b11b8f022ba ro  quiet
   echo   'Loading initial ramdisk ...'
   initrd   /boot/kernel26.img
}
fstab: dernière ligne modfiée

Code : Tout sélectionner

# <file system>        <dir>         <type>    <options>          <dump> <pass>
devpts                 /dev/pts      devpts    defaults            0      0
shm                    /dev/shm      tmpfs     nodev,nosuid        0      0

#/dev/cdrom             /media/cd   auto    ro,user,noauto,unhide   0      0
#/dev/dvd               /media/dvd  auto    ro,user,noauto,unhide   0      0
#/dev/fd0               /media/fl   auto    user,noauto             0      0

/dev/sdd1 swap swap defaults 0 0
LABEL=ssdhome /home ext4 defaults 0 1
UUID=0e68f6f0-cce2-4e58-bc90-1b11b8f022ba / ext4 defaults 0 1
Avatar de l’utilisateur
pascalp
Daikyu
Messages : 74
Inscription : sam. 14 juil. 2007, 18:06
Localisation : Utrecht
Contact :

Re: [boot] kernel, device not present

Message par pascalp »

Marche pas:
Impossible to determine major/minor number of root device

http://pascal.parois.net/public/_DSC1149.JPG

edit: suppression de l'image, ca explose la mise en page :(
Dernière modification par pascalp le ven. 15 juil. 2011, 12:12, modifié 1 fois.
Avatar de l’utilisateur
pascalp
Daikyu
Messages : 74
Inscription : sam. 14 juil. 2007, 18:06
Localisation : Utrecht
Contact :

Re: [boot] kernel, device not present

Message par pascalp »

je veix essayé de faire une mise dans un chroot pour voir si c'est pas un bug de mkinitcpio
benjarobin
Maître du Kyudo
Messages : 16156
Inscription : sam. 30 mai 2009, 15:48
Localisation : Lyon

Re: [boot] kernel, device not present

Message par benjarobin »

C'est juste que la syntaxe n'est pas valide...
Remplace toutes les occurrences de

Code : Tout sélectionner

LABEL=xxxx
par

Code : Tout sélectionner

/dev/disk/by-label/xxxx
Idem avec UUID
Zsh | KDE | PC fixe : core i7, carte nvidia | Portable : Asus ul80vt
Titre d'un sujet : [Thème] Sujet (état)
avi3000
Chu Ko Nu
Messages : 386
Inscription : dim. 19 juin 2011, 18:53
Localisation : dans le neuf trois

Re: [boot] kernel, device not present

Message par avi3000 »

avec grub2, la syntaxe avec uuid est juste, elle fonctionne depuis 2 ans sur tous mes pc.

@pascalp essayes de mettre la partition système en 1er, puis le home et termine par le swap. ça doit pas servir à grand chose, mais ç'est plus logique.
tu peux essayer le fichier grub ci-dessous, en adaptant si nécessaire le insmod part_msdos/part_gpt.

mon fstab

Code : Tout sélectionner

# 
# /etc/fstab: static file system information
#
# <file system>        <dir>         <type>    <options>          <dump> <pass>
devpts                 /dev/pts      devpts    defaults            0      0
shm                    /dev/shm      tmpfs     nodev,nosuid        0      0

#/dev/cdrom             /media/cd   auto    ro,user,noauto,unhide   0      0
#/dev/dvd               /media/dvd  auto    ro,user,noauto,unhide   0      0
#/dev/fd0               /media/fl   auto    user,noauto             0      0

UUID=b35da0b3-c6c4-4961-b4ef-000000000000 / ext4 noatime,discard,errors=remount-ro 0 1
UUID=d106e363-9d35-4579-b47c-000000000000 /home ext4 defaults 0 1

# swap was on /dev/sdb11 during installation
UUID=34dda531-f250-480f-922b-000000000000 none swap sw 0 0

# pour pas abimer le ssd
tmpfs	/tmp tmpfs defaults,size=4g 0 0
mon grub

Code : Tout sélectionner

insmod vbe
insmod ext2
insmod gfxterm
insmod gettext
insmod jpeg
insmod part_gpt #ou part_msdos (inverse de la partition du grub, inutile si tout gpt ou tout msdos)

loadfont /boot/polices/unicode.pf2
set gfxmode="1680x1050x32;1024x768x32;800x600x32;640x480x32;1680x1050;1024x768;800x600;640x480"
terminal_output gfxterm
background_image /boot/grub/neige.jpeg

set color_normal=black/black
set color_highlight=red/black
set locale_dir=/boot/grub/locale
set lang=fr

menuentry "archlinux x64 (on /dev/sdaN)" {
set uuid=b35da0b3-c6c4-4961-b4ef-000000000000 #à remplacer par ton uuid
search.fs_uuid $uuid root
linux '/boot/vmlinuz26' root=UUID=$uuid ro quiet vga=792 splash
initrd '/boot/kernel26.img'
}
Avatar de l’utilisateur
pascalp
Daikyu
Messages : 74
Inscription : sam. 14 juil. 2007, 18:06
Localisation : Utrecht
Contact :

Re: [boot] kernel, device not present

Message par pascalp »

/ est en premier, sdc1 est une partition bios

après une mise à jour vers 2.6.39 ça marche. galère pour générer l'image en chroot :D
Avatar de l’utilisateur
pascalp
Daikyu
Messages : 74
Inscription : sam. 14 juil. 2007, 18:06
Localisation : Utrecht
Contact :

Re: [boot] kernel, device not present (résolu)

Message par pascalp »

Je poste la solution complète si ça peu aider.

l'image iso est relativement ancienne. J'ai utilisé la version : 2010.05 en x86_64

Pendant l'install j'ai ignoré l'installation de grub pour mettre grub2 en suivant ceci:
https://wiki.archlinux.org/index.php/GRUB2

mon grub.cfg ressemble à ceci:

Code : Tout sélectionner

menuentry 'Arch Linux, with Linux vmlinuz26 - archlinux.fr' --class archlinux --class gnu-linux --class gnu --class os {
   load_video
   set gfxpayload=keep
   insmod part_gpt
   insmod ext2
   set root='(hd0,gpt2)'
  search --no-floppy --label --set=root ssdroot
   echo   'Loading Linux vmlinuz26 ...'
   linux   /boot/vmlinuz26 root=/dev/disk/by-label/ssdroot ro  quiet
   echo   'Loading initial ramdisk ...'
   initrd   /boot/kernel26.img
}
grub2 se lance bien et l'image du kernel est lancé également mais le kernel n'arrive pas à monté /.

La solution c'est de mettre à jour le système. Comme il ne boot pas, il faut le faire en chroot.
Je l'ai fait à partir du cd d'install.

Monter / :
mkdir /broken
mount /dev/sdc2 /broken
si necessaire monter /boot
mount /dev/sdx /broken/boot

monter /dev /sys /proc
mount -o bind /dev /broken/dev
mount -o bind /sys /broken/sys
mount -o bind /proc /broken/proc

monter le reseau. J'ai utilise dhcpcd. puis copier/remplir resolv.conf vers /broken/etc/

chrooter:
chroot /broken bash

Faire une mise à jour:
pacman -Syu

le kernel va être mis à jour mais la génération de l'image va échoué car il va se baser sur la version de l'hote (2.6.33) et non du chroot (2.6.39 à ce jour).

la relancer avec:
mkinitcpio -p kernel26 -k 2.6.39-ARCH

rebooter
Répondre