Avoir un média en direct pouvant démarrer des deux manières peut être un problème lors de l’installation d’Ubuntu sur les ordinateurs Windows 8 actuellement disponibles.
En d’autres termes, l’avantage principal de créer EFI-only un support USB live live est: Vous savez que ce support a été démarré et installé via UEFI.
Depuis que Valve effectue déjà le démarrage d’installateurs USB sur UEFI uniquement avec leur système d’exploitation Steam basé sur Debian et UNetbootin - l’alternative la plus votée au Startup Disk Creator de Ubuntu - n'est pas compatible avec UEFI et donc trompeur, je pense que nous devrions avoir un sujet séparé pour la création d'un support USB Live bootable uniquement UEFI.
Créer un support USB Live uniquement au démarrage d'UEFI est assez simple. Copiez simplement les fichiers sur votre clé USB formatée en FAT32. C'est ça!
Rappelez-vous que pour une installation ou un démarrage du support:
Cette méthode fonctionne également pour d'autres supports d'installation contenant des chargeurs EFI, tels que Windows par exemple.
Vous pouvez effectuer les opérations suivantes si 604A-00EA
est votre clé USB et que vous avez déjà p7Zip
installé:
$ 7z x ubuntu-12.04-desktop-AMD64.iso -o/media/$USER/604A-00EA/
Vous avez terminé si vous ne disposez que d'une seule partition sur ce lecteur USB. Sinon, vous devez la marquer comme étant démarrable, par exemple. via parted
:
# parted /dev/sdX set 1 boot on
Où /dev/sdX
serait votre clé USB et 1
le numéro de partition à utiliser pour démarrer.
Montez le fichier .iso et copiez le contenu sur votre clé USB. presse Ctrl+H dans Nautilus pour afficher et copier les fichiers cachés.
Ajoutez le drapeau de démarrage via GParted .
diskmgmt.msc
, cela ouvrirait Gestion des disques.Au lieu d'extraire le contenu d'une image ISO, GRUB et GRUB2 ont été en mesure de démarrer à partir d'images ISO directement via un périphérique de bouclage. Étant donné que l'image ISO est amorçable au format UEFI, nous pouvons configurer un lecteur USB contenant plusieurs ISO avec différents systèmes d'exploitation sans créer de désordre sur le lecteur USB.
Si vous voulez aussi démarrer Windows, vous pouvez aussi regarder SARDU . Je me souviens de l’utiliser avec Windows PE vers 2005 et il semble avoir été mis à jour pour prendre en charge les clés USB et UEFI, mais rappelez-vous que cet outil prend également en charge le démarrage hérité.
De quoi avons nous besoin?
Sur votre machine Ubuntu ou VM, assurez-vous que le paquet grub-efi-AMD64-bin est installé (grub-efi-ia32-bin est également disponible pour les architectures Intel 32 bits sur nouvelles versions). Le paquet peut avoir un nom différent sur une autre distribution, vous pouvez comparer le liste des fichiers du paquet pour trouver le bon paquet sur votre distribution.
La commande suivante générera l'image GRUB, dans ce cas un fichier binaire EFI que chaque ordinateur doté d'un microprogramme UEFI devrait pouvoir exécuter:
grub-mkimage -o bootx64.efi -p /efi/boot -O x86_64-efi \
fat iso9660 part_gpt part_msdos \
normal boot linux configfile loopback chain \
efifwsetup efi_gop efi_uga \
ls search search_label search_fs_uuid search_fs_file \
gfxterm gfxterm_background gfxterm_menu test all_video loadenv \
exfat ext2 ntfs btrfs hfsplus udf
Chaque standard Le microprogramme UEFI doit rechercher dans \EFI\BOOT\
un fichier nommé boot{Arch}.efi
. Créez donc les dossiers sur le lecteur USB et copiez l'image que nous venons de créer à cet emplacement. D'autres architectures au lieu de x64 sont possibles, mais restons simples avec x64/AMD64.
Un exemple très basique de fichier de configuration grub.cfg
qui devrait être placé dans le même répertoire que bootx64.efi
ressemblerait à ceci:
set timeout=3
set color_highlight=black/light-Magenta
menuentry 'Boot Ubuntu 14.04.2 LTS from ISO' {
set isofile="/efi/boot/ubuntu-14.04.2-desktop-AMD64.iso"
loopback loop $isofile
linux (loop)/casper/vmlinuz.efi boot=casper iso-scan/filename=$isofile noprompt noeject quiet splash persistent --
initrd (loop)/casper/initrd.lz
}
submenu 'Useful snippets' {
menuentry 'Ubuntu' {
chainloader /efi/ubuntu/grubx64.efi
}
menuentry 'Windows' {
chainloader /efi/Microsoft/Boot/bootmgfw.efi
}
menuentry 'Firmware Setup' {
fwsetup
}
}
L'important est le bloc de configuration avec le titre Boot Ubuntu 14.04.2 LTS from ISO
. Vous pouvez modifier la couleur et le délai selon vos préférences. J'ai choisi black/light-Magenta
car il semble encore un peu Ubuntu-ish mais se distingue facilement lors du chargement en chaîne d'autres configurations. Vous pouvez trouver plus d'exemples d'autres distributions dans le Arch Wiki et lire le manuel de GRUB vaut vraiment votre temps si vous voulez aller plus loin.
Pour revenir au bloc de configuration, il devrait être évident que l'ISO est référencé comme /efi/boot/ubuntu-14.04.2-desktop-AMD64.iso
, copiez donc votre ISO dans \EFI\BOOT\
et remplacez ubuntu-14.04.2-desktop-AMD64.iso
dans la configuration par le nom de fichier réel de votre ISO.
loopback loop $isofile
est la ligne qui chargera notre fichier ISO sur un périphérique de bouclage à partir duquel nous pouvons démarrer le noyau Linux directement. Cela est possible car notre image EFI GRUB inclut le module de bouclage. (Quelques essais et erreurs ont été nécessaires pour déterminer quels modules il est raisonnable d'inclure. Vous ne devriez pas voir de message d'erreur, ce n'est toujours pas parfait.) En parlant du noyau, vous pouvez ajouter des paramètres de noyau tels que toram
, des paramètres pour différents langues (exemple locale=de_DE bootkbd=de
) et comme dans l'exemple: persistent
Vous pouvez ajouter une partition comme décrit dans: Comment puis-je obtenir une clé USB live pour utiliser une partition pour la persistance? Ou vous pouvez créer un fichier casper-rw
et le placer à la racine de votre clé USB.
dd if=/dev/zero of=casper-rw bs=1M count=4094
mkfs.ext4 -m 0 casper-rw
Je n'ai pas testé le maximum absolu, il devrait se situer entre 4094 et 4096 Mo. Utilisez une partition si vous envisagez d'utiliser plus d'espace. Notez que chaque modification de la (racine) est une modification du système de fichiers de superposition, même la suppression de fichiers.
Vous devriez examiner les réponses aux questions suivantes pour vérifier que le contenu ISO en direct sur le lecteur USB est en parfait état:
Le démarrage sécurisé deviendra obligatoire avec les machines Windows 10, je vous suggère donc de jeter un coup d'œil au pré-chargeur de la Linux Foundation pour ajouter la fonctionnalité de démarrage sécurisé à cette configuration. Voici quelques art ASCII illustrant les menus de HashTool associé .
Félicitations, je dirais que vous maîtrisez maintenant le démarrage UEFI et que vous ne devriez plus avoir peur.
L'extraction du contenu d'un fichier ISO de bureau Ubuntu 64 bits sur une partition avec un système de fichiers FAT32 et un indicateur d'amorçage fera l'affaire: pour créer un lecteur actif, qui s'amorce uniquement en mode UEFI. Cela s'appelle 'Copier les fichiers de la méthode ISO' ici (dans la réponse acceptée).
Mais il est facile de tester dans un système Ubuntu en cours d’exécution (en temps réel ou installé), s’il a été démarré en mode UEFI ou BIOS. Exécutez cette ligne de commande,
test -d /sys/firmware/efi && echo efi || echo bios
Cela facilite l’utilisation de systèmes en direct pouvant être utilisés dans les deux modes d’amorçage, ce qui peut également constituer un avantage.
Voir également les liens suivants pour une explication plus détaillée et une description de la méthode,
Utiliser dd
a fonctionné pour moi, pour une raison quelconque, la version de l'interface graphique ne fonctionnait pas. Donc, d’abord, vous voudrez peut-être surveiller l’avancement de dd , une autre option consiste à utiliser l’option SIGUSR1 pour déclencher dd
et signaler périodiquement sa progression, mais c’est plus compliqué que pv
name__.
Ensuite:
Sudo dd if=path/to/image/file | pv | Sudo dd of=/dev/device_you_want_to_use
(/dev/device_you_want_to_use
sera typiquement /dev/sdb
, mais vérifiez avec df
name__!)