Page 1 sur 1
[UEFI et Grub] Grub n'est pas chargé (résolu)
Publié : jeu. 15 mai 2014, 17:16
par JJi
Salut à tous,
J'ai un souci après une installation toute fraîche d'arch sur mon pc.
Au démarrage, immédiatement après l'UEFI, j'ai le fameux message "Reboot and select proper boot device or insert boot media in select boot device and press a key".
Je suppose donc que UEFI n'arrive pas à trouver grub.
Je n'ai pas eu de message d'erreur lors de le l'installation. J'ai bien formaté et démarrer la clesf usb contenant arch comme expliqué dans le wiki anglais pour les systèmes UEFI.
Code : Tout sélectionner
grub-install --target=x86_64-efi --efi-directory=/boot/efi --bootloader-id=arch_grub --recheck
Ne m'a pas retourné d'erreur, les packages dosfstools et efibootmgr étant installés.
LA génération automatique de grub.conf s'est faite sans erreur aussi.
Arch est installé sur un disque dur de 3to formaté comme suit:
/dev/sdb1 est la partition système UEFI monté dans /boot/efi, et a bien le drapeau "boot"
/dev/sdb2 est monté dans /boot
/dev/sdb3 est la swap, activé grâce à swapon, pas de souci de ce côté là
/dev/sdb4 est monté dans /
/dev/sdb5 est monté dans /home.
Et j'ai vérifié dans UEFI, il boote bien sur le bon disque dur (yen a qu'un de toute façon...).
Là je séche un peu.
Si vous avez des suggestions, ou besoin d'autres fichiers je suis dispo !
Merci.
Re: [UEFI et Grub] Grub n'est pas chargé
Publié : jeu. 15 mai 2014, 17:46
par jean_no
Salut
Comment est configuré ton boot ? MBR, CSM ou UEFI ?
Quel le contenu de /boot/efi ?
Que donne la sortie de efibootmgr -v ?
Pourquoi ta partition EFI ( sdb1 ) a un flag "boot" ?
Peux-tu donner la sortie de gdisk -l /dev/sdb ? ( afin de connaitre le code de ta partition qui doit être EF00 )
A+
Re: [UEFI et Grub] Grub n'est pas chargé
Publié : jeu. 15 mai 2014, 18:38
par JJi
jean_no a écrit :Salut
Comment est configuré ton boot ? MBR, CSM ou UEFI ?
Question épineuse :/ : j'ai comme carte mère une Asrock H61m-u3s3, qui a UEFI (cf les specs sur le
site officiel: - BIOS de type UEFI 32 MB avec interface graphique). Là où c'est vague, c'est qu'il n'y a pas grand chose dans le manuel à propos de l'activation de l'uefi pour le boot: la seule référence
page 55 du manuel, faut activer l'ahci pour les disques, ce que j'ai fait.
jean_no a écrit :
Quel le contenu de /boot/efi ?
/boot/efi contient /boot/efi/EFI/arch_grub/grubx64.efi
jean_no a écrit :
Que donne la sortie de efibootmgr -v ?
J'ai entré la commande
parce que yavait pas mal de truc à recopié, mais le fichier txt ne contient que ça:
Code : Tout sélectionner
BootCurrent: 0005
Timeout: 1 seconds
BootOrder: 0003,0004,0005,0002
Boot0002 CD/DVD Drive BIOS(3,0,00)(invalid optional data length)
Boot0003* Hard Drive BIOS(2,0,00)(invalid optional data length)
Boot0004* USB BIOS(5,0,00)(invalid optional data length)
Boot0005* UEFI: SanDisk Cruzer 7.01
jean_no a écrit :
Pourquoi ta partition EFI ( sdb1 ) a un flag "boot" ?
C'est ce qui est indiqué dans
le wiki:
Une partition système UEFI doit être rajoutée. Elle peut être de n'importe quelle taille, mais forcément formatée en FAT32 et d'un minimum de 512 Mb (prévoir davantage si vous avez plusieurs chargeurs UEFI ou plusieurs systèmes démarrés par UEFI).
Note: Cette partition se rajoute à une partition éventuelle dédiée à /boot.
[...]
Utiliser GNU Parted/GParted: créer une partition FAT32. Placer le drapeau "boot" sur cette partition.
jean_no a écrit :
Peux-tu donner la sortie de gdisk -l /dev/sdb ? ( afin de connaitre le code de ta partition qui doit être EF00 )
Le système connaissait pas gdisk, je peux rédémarrer chrooter et l'installer, mais voilà ce que j'ai obtenu avec fdisk (pas sûr que ce soit pertinent):
Code : Tout sélectionner
Disk /dev/sda: 2.7 TiB, 3000592982016 bytes, 5860533168 sectors
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 4096 bytes
I/O size (minimum/optimal): 4096 bytes / 4096 bytes
Disklabel type: gpt
Disk identifier: 29A45CDE-63FD-429A-9EFD-347940DA6EE3
Device Start End Size Type
/dev/sda1 2048 2099199 1G EFI System
/dev/sda2 2099200 2303999 100M Linux filesystem
/dev/sda3 2304000 19081215 8G Linux swap
/dev/sda4 19081216 70281215 24.4G Linux filesystem
/dev/sda5 70281216 5860532223 2.7T Linux filesystem
C'est normal que ce soit /dev/sda: lors du screenshot sous gparted mes deux disques dur étaient branchés. Néamoins lors de l'installation et du démarrage d'arch linux, seul le disque contenant arch est branché.
Merci pour ton aide !
Re: [UEFI et Grub] Grub n'est pas chargé
Publié : ven. 16 mai 2014, 13:58
par floflo77890
Pour l'activation ou la désactivation de l'UEFI, il te faut aller faire un tour dans le bios ou tu trouveras une option pour activé ou désactivé l'UEFI.
Normalement la sortie de la commande gdisk -l /dev/sda
aurait du te donner un résultat. Mais bon ce n'est pas grave il est quand même écrit que ta table de partition est de type GPT.
Pour en revenir à l'activation de l'UEFI, lors de ton installation tu as bien du la désactivée alors il te faut faire la même manipulation pour réactiver.
Re: [UEFI et Grub] Grub n'est pas chargé
Publié : ven. 16 mai 2014, 15:23
par otacon
Salut,
Si aucune option spéciale dans ton bios pour démarrer un fichier .efi, il faut récréer le path standard uefi.
Dans ta partition EFI, tu as
EFI/arch_grub/grubx64.efi
Code : Tout sélectionner
mount /dev/sda1 /mnt
cd /mnt/EFI
mkdir boot
cp /mnt/EFI/arch_grub/grubx64.efi /mnt/EFI/boot/bootx64.efi
tu obtiens un /EFI/boot/bootx64.efi qui devrait être vu. C'est la seule solution par exemple pour faire reconnaître un .efi à un bios de macbook.
Re: [UEFI et Grub] Grub n'est pas chargé
Publié : ven. 16 mai 2014, 18:43
par JJi
Ok, merci à vous je tente demain et je vous tiens au courant. Je sens que la carte mère va me souler...
Re: [UEFI et Grub] Grub n'est pas chargé
Publié : lun. 19 mai 2014, 10:31
par JJi
Bon... J'ai flashé le BIOS/UEFI à la dernière version (fin 2013) en espérant avoir plus d'option dans l'UEFI. Peine perdue, à part le secure boot que j'ai désactivé, toujours rien pour avoir le choix entre booter en UEFI, BIOS ou CSM. Je commence à désespérer.
J'ai testé la manip suivante:
otacon a écrit :Salut,
Si aucune option spéciale dans ton bios pour démarrer un fichier .efi, il faut récréer le path standard uefi.
Dans ta partition EFI, tu as
EFI/arch_grub/grubx64.efi
Code : Tout sélectionner
mount /dev/sda1 /mnt
cd /mnt/EFI
mkdir boot
cp /mnt/EFI/arch_grub/grubx64.efi /mnt/EFI/boot/bootx64.efi
tu obtiens un /EFI/boot/bootx64.efi qui devrait être vu. C'est la seule solution par exemple pour faire reconnaître un .efi à un bios de macbook.
Mai j'ai toujours le message "reboot or insert..."
Quelqu'un peut confirmer que le retour de ma commande
est correcte:
Code : Tout sélectionner
BootCurrent: 0005
Timeout: 1 seconds
BootOrder: 0003,0004,0005,0002
Boot0002 CD/DVD Drive BIOS(3,0,00)(invalid optional data length)
Boot0003* Hard Drive BIOS(2,0,00)(invalid optional data length)
Boot0004* USB BIOS(5,0,00)(invalid optional data length)
Boot0005* UEFI: SanDisk Cruzer 7.01
Jvois que le Boot0003 a "BIOS" d'indiqué.
Voilà voilà, si vous avez encore des suggestions.
Re: [UEFI et Grub] Grub n'est pas chargé
Publié : lun. 19 mai 2014, 10:51
par benjarobin
Tu n'as pas d'entrée pour grub, ni d'entrée fallback pour ton disque dur, donc cela ne risque pas de fonctionner. Il faut la rajouter via efibootmgr.
On ne vois que ta clé USB qui est bien en boot UEFI...
Tu devrait voir une entrée de ce genre :
Code : Tout sélectionner
Boot0002* Fedora HD(1,800,61800,6d98f360-cb3e-4727-8fed-5ce0c040365d)File(\EFI\fedora\grubx64.efi)
Voir ce super article :
https://www.happyassassin.net/2014/01/2 ... work-then/
La sortie de la commande
gdisk -l /dev/sda
serait utile... Normalement tu peux la lancer depuis le cd d'installation de ArchLinux, pas besoin de chroot
Re: [UEFI et Grub] Grub n'est pas chargé
Publié : lun. 19 mai 2014, 11:32
par JJi
Ok, j'ai lancé gdisk- l depuis le shell d'installation. Voilà le résultat:
GPT fdisk (gdsik) version 0.8.10
Problem opening -l for reading ! Error is 2
The specified file does not exist !
J'aurai peut-être du indiquer un disque à partir duquel lister les partitions ?
Je vais lire l'article linké.
Re: [UEFI et Grub] Grub n'est pas chargé
Publié : lun. 19 mai 2014, 12:06
par benjarobin
Merci d'utiliser les balises codes et non quotes pour tout ce qui touche au terminal.
De plus j’ai bien indiqué de faire
Bref avec en paramètre le disque dur, et non la clé USB
Re: [UEFI et Grub] Grub n'est pas chargé
Publié : lun. 19 mai 2014, 13:29
par JJi
Oula, moi et les lundi matins...
Pour :
J'ai:
Code : Tout sélectionner
GPT fdisk (gdisk) version 0.8.10
Partition table scan:
MBR: protective
BSD: not present
APM: not present
GPT: present
Found valid GPT with protective MBR; using GPT.
Disk /dev/sda: 5860533168 sectors, 2.7 TiB
Logical sector size: 512 bytes
Disk identifier (GUID): 29A45CDE-63FD-429A-9EFD-347940DA6EE3
Partition table holds up to 128 entries
First usable sector is 34, last usable sector is 5860533134
Partitions will be aligned on 2048-sector boundaries
Total free space is 2925 sectors (1.4 MiB)
Number Start (sector) End (sector) Size Code Name
1 2048 2099199 1024.0 MiB EF00
2 2099200 2303999 100.0 MiB 8300
3 2304000 19081215 8.0 GiB 8200
4 19081216 70281215 24.4 GiB 8300
5 70281216 5860532223 2.7 TiB 8300
J'ai bien le code EF00 pour la partition EFI.
Par contre c'est quoi cette histoire de "valid GPT with protective MBR" ?
Re: [UEFI et Grub] Grub n'est pas chargé
Publié : lun. 19 mai 2014, 13:37
par benjarobin
Si je ne dis pas de bêtise, c'est pour garder une pseudo rétrocompatibilité avec une table de partition msdos. Bref rien d'anormal ici.
Peux tu monter la partition
/dev/sda1
dans
/mnt
est nous donner la sortie de :
tree /mnt
?
De plus tu peux essayer de rajouter l'entrée dans la nvram du firmware UEFI de ta carte mère, peux tu nous donner la sortie de :
Code : Tout sélectionner
efibootmgr -c -g -d /dev/sda -p 1 -w -L "Arch Linux (GRUB)" -l /EFI/arch_grub/grubx64.efi
efibootmgr -v
Re: [UEFI et Grub] Grub n'est pas chargé
Publié : mar. 20 mai 2014, 13:28
par JJi
benjarobin a écrit :De plus tu peux essayer de rajouter l'entrée dans la nvram du firmware UEFI de ta carte mère, peux tu nous donner la sortie de :
Code : Tout sélectionner
efibootmgr -c -g -d /dev/sda -p 1 -w -L "Arch Linux (GRUB)" -l /EFI/arch_grub/grubx64.efi
efibootmgr -v
Super, ça fonctionne, je peux maintenant démarrer archlinux !
Merci pour ton aide, je passe le sujet en résolu.