La procédure utilisée dans mon post précédent était mauvaise, c'est pourquoi j'ai obtenu un mauvais résultat. Je la reprends en détaillant du mieux que je peux. Le point crucial, c'est de passer la commande de mise à jour de Grub (sudo update-grub) avant de redémarrer le PC tout à la fin (chose que je n'avais pas faite dans le post précédent. C'est pourquoi je n'avais pas de fichier grub.cfg et ça avait tout faussé).
Etat de départ (idem post précédent, j'ai restauré une image disque) : Ubuntu 12.04 installé à partir d'un support d'installation qui a utilisé la version francophone de l'iso 64 bits. Comme cet iso est
bogué (il n'a pas de directorie EFI), l'installation s'est faite forcément dans le seul mode disponible : le mode BIOS. Il convient de la réparer pour qu'elle fonctionne en mode EFI. Comme pour le post précédent, il y avait une installation préexistante de Ubuntu 11.10 - installée en mode EFI - qui occupait les partition sda1, sda2 et sda3 ; l'installation de Ubuntu 12.04 s'est faite sur sda4 et sda5.
Procédure de réparation depuis la session Ubuntu 12.04 démarrée en mode BIOS :
sudo blkid -g
[sudo] password for malbo:
sudo blkid
/dev/sda1: UUID="b4942dc1-d169-4a20-a675-bc0d5b34c902" TYPE="ext4"
/dev/sda2: UUID="5e114c3e-feba-4bce-8f19-1ff27ce9ee43" TYPE="swap"
/dev/sda3: SEC_TYPE="msdos" UUID="8AA5-661F" TYPE="vfat"
/dev/sda5: UUID="22843522-6b2a-4d24-9a67-27ed11e5b92a" TYPE="ext4"
Edition du fstab avec pouvoir administrateur :
gksudo gedit /etc/fstab
création dans le fichier fstab de la ligne suivante (grâce à l'UUID de sda3 - la partition EFI , qui existait déjà du fait d'une autre installation en mode EFI préinstallée - que j'ai pu récupérer ci-dessus):
UUID=8AA5-661F /boot/efi vfat defaults 0 1
Commandes pour monter /boot/efi
sudo mkdir /boot/efi
sudo mount /boot/efi
mount
Je trouve bien dans le résultat de la commande "mount" la ligne attendue :
/dev/sda3 on /boot/efi type vfat (rw)
qui atteste que tout s'est bien passé.
Purge de grub-pc :
sudo apt-get purge grub-pc
la purge suivante n'est peut-être pas strictement indispensable mais je la fais quand même pour ne pas laisser de toiles d'araignées :
sudo apt-get purge grub-pc-bin
Install grub-efi :
sudo apt-get install grub-efi
Lecture des listes de paquets... Fait
Construction de l'arbre des dépendances
Lecture des informations d'état... Fait
Les paquets supplémentaires suivants seront installés :
efibootmgr grub-common grub-efi-amd64 grub-efi-amd64-bin grub2-common
Paquets suggérés :
multiboot-doc grub-emu xorriso desktop-base
Les NOUVEAUX paquets suivants seront installés :
efibootmgr grub-efi grub-efi-amd64 grub-efi-amd64-bin
Les paquets suivants seront mis à jour :
grub-common grub2-common
2 mis à jour, 4 nouvellement installés, 0 à enlever et 316 non mis à jour.
Il est nécessaire de prendre 2 880 ko dans les archives.
Après cette opération, 2 187 ko d'espace disque supplémentaires seront utilisés.
Souhaitez-vous continuer [O/n] ?
En fin d'exécution, je vois ça dans le terminal :
Creating config file /etc/default/grub with new version
Fatal: Couldn't open either sysfs or procfs directories for accessing EFI variables.
Try 'modprobe efivars' as root.
Fatal: Couldn't open either sysfs or procfs directories for accessing EFI variables.
Try 'modprobe efivars' as root.
Installation finished. No error reported.
Paramétrage de grub-efi (1.99-21ubuntu3.1) ...
A l'issue, je constate que je n'ai pas de fichier grub.cfg.
Je passe la commande de mise à jour de Grub (sudo update-grub) qui est sensée créer un grub.cfg s'il n'existe pas :
sudo update-grub
Generating grub.cfg ...
Found linux image: /boot/vmlinuz-3.2.0-26-generic
Found initrd image: /boot/initrd.img-3.2.0-26-generic
Found linux image: /boot/vmlinuz-3.2.0-23-generic
Found initrd image: /boot/initrd.img-3.2.0-23-generic
Found memtest86+ image: /boot/memtest86+.bin
Found Ubuntu 11.10 (11.10) on /dev/sda1
done
Là, un fichier grub.cfg a bien été créé.
Je fais un état des lieux du fichier .efi en passant cette commande (avec son résultat obtenu) :
ls -l /boot/efi/EFI/ubuntu/grubx64.efi
-rwxr-xr-x 1 root root 117760 juil. 24 11:26 /boot/efi/EFI/ubuntu/grubx64.efi
Au vu de la date, il est certain que ce fichier a bien été créé au moment de l'installation de grub-efi
Il me reste à redémarrer le PC en passant du mode BIOS au mode EFI (voir EDIT) : ça fonctionne !
Arrivé dans ma session, je fais un BootInfo :
http://paste.ubuntu.com/1107891/
Conclusion : Il est possible de faire passer du mode BIOS au mode EFI une installation de Ubuntu 12.04 réalisée en utilisant la version francophone de l'iso (boguée). C'est long mais ça fonctionne en final.
EDIT : au lieu de redémarrer le PC en mode EFI comme il se doit (puisque Ubuntu a été transformé en installation EFI), si je redémarre le PC en mode BIOS, j'ai immédiatement ce message qui apparaît sur fond noir :
error: invalid arch independent ELF magic.
grub rescue>