mon idée est de créer une clé USB de démarrage avec Lubuntu capable de démarrer sur un ordinateur portable BIOS plus ancien et sur des systèmes UEFI plus récents.
Ce serait assez facile, lorsque le Stick serait configuré comme un périphérique de démarrage hérité, mais je veux que ce soit un périphérique compatible UEFI.
- Est-ce que cela a du sens?! Ou ai-je compris le concept UEFI horriblement mal?
- Si nécessaire, il peut y avoir deux installations Linux différentes (une pour UEFI, une pour héritage mais les deux sur le même lecteur)
- Démarrez un périphérique GPT sur le BIOS existant - cela fonctionnera-t-il?
Je ne vois pas clairement, ce serait peut-être juste une meilleure idée d'avoir un bâton de démarrage Linux hérité séparé, mais je suis curieux d'explorer les limites :)
Alors, est-ce que mon idée d'un stick hybride linux-uefi-boot-usb qui fonctionnerait avec le bios hérité est possible?
(3) semble être possible pour linux avec grub http://www.rodsbooks.com/gdisk/booting.html
De plus, j'ai une partition EF00 prête sur ce bâton, à part un Swap, Fat32 et deux partitions Ext4.
(1) semble également possible http://www.rodsbooks.com/bios2uefi/
Ces instructions datent toutefois de 2012, un certain temps s'est écoulé depuis - quelqu'un a-t-il un exemple de travail plus simple?
Pour d'autres chercheurs sur ce sujet:
Démarrage de Windows 7 à partir du disque GPT sur une carte mère non EFI Existe-t-il un moyen de démarrer Windows 7/8 en utilisant le BIOS sur GPT?
http://www.borncity.com/blog/2012/07/25/uefi-emulation-auf-pcs/
MISE À JOUR:
J'ai réussi à créer la partie UEFI, y compris la configuration du démarrage sécurisé avec rEFInd.
En suivant les conseils donnés, j'ai utilisé dd
pour copier gptmbr.bin
sur mon lecteur, qui semble maintenant faire au moins quelque chose sur un système BIOS: "Ce n'est pas un disque amorçable"
Cependant, j'ai suivi les conseils et défini le pmbr
drapeau pour le disque et le legacy boot
drapeau gpt - toujours cette erreur, des idées?
Ma partition ESP est la deuxième partition sur le disque et est configurée avec des fichiers efi.
La mise en place:
- 64 Go d'espace
- Table de partition GPT
- Le disque a un indicateur pmbr défini
- La première partition commence à 16 Mo et mesure environ 45 Go, un fat32 primaire pour les données
- La 2ème partition démarre autour de 45 Go et est le système EFI (fat32) avec une configuration rEFInd fonctionnelle
- 3ème - 5ème partition est à la maison (ext4), swap et root (ext4) de mon Lubuntu 14.04.1 de travail
En utilisant, dd
j'ai copié gptmbr.bin
mon Syslinux 6.02 compilé dans les 440 premiers octets.
Sous parted 3.2, je peux voir que ma partition 2 a un drapeau boot
et legacy_boot
.
Pendant le démarrage, je ne reçois aucun disque de démarrage trouvé - si je configure ma 5ème au lieu de la 2ème partition pour être, legacy_boot
je reçois le système d'exploitation manquant
C'est vivant!
(Comme mon ancienne question a été supprimée /ubuntu//q/516730/319747 )
Je suppose que je dois copier certains des
*.c32
fichiers et d'autres dans un dossier syslinux sur mon EFI (où?!) Ou sur ma partition racine (/boot/syslinux
?!) Pour le faire fonctionner - ai-je raison? Quels fichiers sont essentiels?De plus, je suppose que j'aurai aussi besoin de ce
syslinucx.cfg
fichier - non?
Mon objectif serait au moins un démarrage direct du système lubuntu sur la partition root ext4.
Mise à jour:
Bien que je ne sache pas pourquoi, je l'ai fait fonctionner - mais pas avec une installation manuelle.
- le
pmbr
drapeau était mauvais et interdisait à mon système UEFI de démarrer le stick en tant qu'UEFI- le
legacy_boot
drapeau était nécessaire pour ma 5ème partition (racine linux)- Je devais utiliser
extlinux --install /path/to/root/parition
- J'ai dû créer un
syslinux.cfg
dans le dossier syslinux sous le démarrage de ma partition racineJ'ai fait tout cela sur un deuxième stick plus petit, puis j'ai essayé de copier uniquement le dossier syslinux, mais je n'ai pas eu de chance - cela
extlinux --install
semble obligatoire.Quelqu'un sait quoi exactement
extlinux --install
? Peut-il être fait manuellement ou comment pourriez-vous installer une version plus récente comme 6.02 sans l'installer sur votre système?
J'ai mon bâton à travailler avec les partitions mentionnées sur le BIOS, UEFI et UEFI SecureBoot, un sacré tour, j'ai beaucoup appris, presque tué 2 To avec séparé, soyez prudent et bonne chance.
Réponses:
C'est possible, et c'est très souvent fait avec des clés USB externes et des disques internes.
Concernant les types de table de partition:
Le BIOS n'a normalement pas besoin de table de partition. Il ne s'intéresse qu'à la partie du code d'amorçage qui est les 440 premiers octets de votre MBR. (Bien qu'il y ait des exceptions. Certaines implémentations du BIOS se cassent réellement si elles ne peuvent pas trouver un MBR avec l'un des types de partition habituels. Espérons que ce soient rares.)
La table de partition GPT ne remplace pas physiquement un MBR - elle commence toujours au secteur 1, tandis que le MBR est dans le secteur 0 - il est donc possible pour un disque d'avoir les deux. En fait, la plupart des disques de TPG n'ont un « MBR de protection » contenant une seule partition qui couvre le disque, afin de prévenir les outils de partitionnement MBR seulement âgés de détruire accidentellement les données.
Ainsi, vous pouvez installer, par exemple, le secteur d'amorçage Syslinux dans votre MBR, et il démarrera. (Le
syslinux-install_update
script fera cela pour vous, mais vous pouvez cherchergptmbr.bin
dans votre paquet syslinux pour le faire manuellement.)Tout comme le drapeau "actif" sur les partitions MBR, Syslinux recherchera le drapeau "legacy BIOS bootable" sur les partitions GPT (bit 2 - UEFI spec 2.4 section 5.3.3 table 20); le script susmentionné définit également cet indicateur automatiquement si vous avez
sgdisk
(à partir de gptfdisk) installé.GRUB peut également être utilisé, mais c'est aussi un peu plus ennuyeux. Puisque GRUB 2 veut "incorporer" des parties de lui-même dans les secteurs 1-62 traditionnellement inutilisés, il écraserait un GPT qui est stocké au même emplacement. Vous devrez donc peut-être créer une partition dédiée de 2 à 4 Mo et la marquer comme amorçable par le BIOS, de sorte que
grub-install
cela se trouverait un lieu d'intégration.D'autre part, la spécification UEFI ne nécessitent un soutien pour les types de partition MBR (section 12.3.1) et affecter le type de partition MBR
0xEF
sur la partition système EFI (section 5.2.2).Donc, si pour une raison quelconque, vous ne pouvez pas faire fonctionner votre disque avec GPT, vous pouvez toujours créer une partition système EFI sur MBR, et elle sera utilisée tant qu'elle aura le système de fichiers correct et tous les fichiers nécessaires (section 12.3.1.3):
En ce qui concerne les systèmes d'exploitation, Linux ne se soucie généralement pas du tout de savoir s'il est démarré à partir du BIOS aujourd'hui et de l'UEFI demain. J'ai dû redémarrer mon ordinateur portable du mode UEFI au mode "Compatibilité BIOS" et revenir peut-être cent fois cette semaine, tout en essayant de trouver un bogue dans le support UEFI 3.17 ...
Notez que l'article «BIOS to UEFI Transformation» concerne quelque chose de très différent. Il décrit comment installer UEFI lui - même - une implémentation UEFI appelée "DUET" - à démarrer à partir d'un système uniquement BIOS. Cela n'a rien à voir avec le démarrage d'un système d'exploitation directement à partir du BIOS.
la source
mbr
semble être ok mais ne trouve pas maEFI System
partition. Est-ce un problème que ce soit la deuxième partition sur le disque commençant environ 45 Go dans le disque? Dois-je configurer une section spectrale sur l'EFI en plus de la configuration EFI fonctionnant déjà ici?Oui, c'est possible.
L'idée de base est de partitionner GPT votre clé USB comme ceci:
1686148-6449-6E6F-744E-656564454649
) - 1 Mio, pas de système de fichiersC12A7328-F81F-11D2-BA4B-00A0C93EC93B
) - 200 MiB, système de fichiers VFAT0FC63DAF-8483-4772-8E79-3D69D8477DE4
) - 1 Gio, système de fichiers ext40FC63DAF-8483-4772-8E79-3D69D8477DE4
) - espace restant, système de fichiers XFS ou BtrfsCe partitionnement nous permet de démarrer sur les systèmes hérités car avec GPT, il y a encore de l'espace pour un MBR (pour des raisons de compatibilité descendante) et Grub2 a suffisamment d'espace pour installer une étape intermédiaire dans la partition de démarrage du BIOS. Les BIOS hérités ne se soucient pas du schéma de partitionnement et le noyau Grub2 / Linux n'a aucun problème à comprendre le GPT sur les systèmes hérités.
Sur les systèmes UEFI , le micrologiciel UEFI ignore le MBR et utilise la partition système EFI comme point d'entrée.
Par exemple, avec Fedora, vous devez essentiellement faire ce qui suit:
Assurez-vous que le système de fichiers de démarrage Linux est monté sous
/boot
et que le système de fichiers de partition système EFI est monté sous/boot/efi
.(Re-) Installez les chargeurs de démarrage hérités et UEFI:
(Re-) Générez les fichiers de configuration grub à la fois pour le démarrage hérité et UEFI:
Selon que votre système a démarré en mode hérité ou en mode UEFI, vous devez corriger le premier ou le deuxième fichier et le remplacer
(linux|initrd)16
par(linux|initrd)efi
ou l'inverse.Installez grub dans le MBR:
Voila.
la source