Beim Versuch, Ubuntu 15.10 auf einem USB-Stick zu installieren, wird EFI immer noch auf die Hauptfestplatte geschrieben

Beim Versuch, Ubuntu 15.10 auf einem USB-Stick zu installieren, wird EFI immer noch auf die Hauptfestplatte geschrieben

Ich habe einen Windows 10-PC, versuche aber, meinen Kindern das Programmieren in C beizubringen, und habe versucht, Linux auf einem entfernbaren USB-Laufwerk zu installieren.

PC-Setup: Ich habe einen i3 mit einem Gigabyte Z97x Gaming 3-Motherboard. Ich habe Windows 10 auf der SSD und habe es im BIOS so eingestellt, dass nur UEFI gebootet wird (Secure Boot ist deaktiviert).

Ich habe den USB-Installer im UEFI-Modus einwandfrei gebootet, indem ich ihn im BIOS ausgewählt habe (es stand eindeutig UEFI) und er wurde mit dd auf einer Ubuntu-Distribution auf meinem Linux-Laptop mit dem Ubuntu-Installations-ISO im UEFI-Modus (F12-Bootmenü) erstellt. Das Booten verlief problemlos. Um es auf dem anderen USB-Stick zu installieren, habe ich die Ubuntu-Installationsmenüfunktion auf dem Installationslaufwerk ausgeführt. Dann habe ich meine eigenen Partitionen auf dem Installee-USB-Stick eingerichtet. Ich habe eine 512 MB große EFI-Partition (primär), einen 27 GB großen Ext4-Teil (primär) und einen 4 GB großen Swap-Teil (ebenfalls primär) erstellt.

Ich habe die Installation des Bootloaders in /dev/sdc ausgewählt. Die Installation verläuft reibungslos und der Neustart ist auch möglich.

Okay... jetzt wird es ein bisschen seltsam. Und ich kann nicht herausfinden, was ich hier falsch mache.

Wenn ich mir meine Startoptionen im F12-Bootselektor ansehe, werden 4 Optionen aufgelistet. Windows-Bootmanager, Ubuntu, Ubuntu (ja, 2 davon) und Samsung 32 GB UEFI-Boot (das USB-Laufwerk ist ein Samsung). Wenn ich Windows auswähle, wird Windows gestartet. Wenn ich Samsung 32 GB UEFI auswähle, wird immer noch Windows gestartet?! Aber wenn ich Ubuntu auswähle ... wird Ubuntu auf dem 32 GB USB-Laufwerk gestartet.

Noch frustrierender ist, dass die Samsung UEFI-Bootoption verschwindet, wenn ich das USB-Laufwerk herausziehe, aber die Ubuntu-Optionen bleiben. Wenn Sie darauf klicken, ohne dass das USB-Laufwerk eingesteckt ist, wird ein Grub-Menü angezeigt und es bootet nicht. Im BIOS sind diese beiden Ubuntu-Optionen unter dem SSD-Laufwerk aufgeführt. Das heißt, obwohl ich ausdrücklich gesagt habe, dass es dort nicht installiert werden soll, wurde Grub trotzdem darauf installiert?

Windows bootet glücklicherweise immer noch, wenn der Windows-Bootmanager ausgewählt ist, aber das ist sehr frustrierend. Warum hat es das Problem verursacht? Ich habe Windows repariert und Bootrec verwendet und sowohl /FixMbr als auch /FixBoot ausgeführt, aber die Ubuntu-Optionen bleiben bestehen. Grub scheint sich irgendwo versteckt zu haben, aber ich weiß nicht, wo! Das USB-Laufwerk bootet auf meinem Laptop auch nicht (obwohl das Installationsprogramm im UEFI-Modus problemlos bootet).

Ich bin nicht sicher, was ich falsch gemacht habe. Ich habe bei der Installation darauf geachtet, dass ich im UEFI-Modus und nicht im BIOS-Modus war, und ich habe beim Booten nie etwas ausgewählt, das /dev/sda berühren würde, um meine Festplatte zu beschädigen.

Die Installation von Fedora 23 auf einem USB-Laufwerk verläuft problemlos und der Bootvorgang erfolgt im UEFI-Modus.

Wäre für Hilfe wirklich dankbar! Danke!

Antwort1

Bei der Installation unter EFI wird die Option „Gerät für Bootloaderinstallation“ (oder wie auch immer sie heißt; ich habe dieses Detail nicht überprüft) ignoriert. Ich habe nicht überprüft, ob es tatsächlich funktioniert, aber es gibt eine andere Möglichkeit, anzugeben, wohin der Bootloader geht: Es ist die Partition, die in der Partitionsliste „Etwas anderes“ als „EFI-Bootpartition“ oder „EFI-Systempartition“ (der Begriff variiert je nach Ubuntu-Version) gekennzeichnet ist.In der Theorie,Wenn Sie das ESP auf dem USB-Laufwerk markieren und das ESP auf der Festplatte entfernen, sollte das Installationsprogramm GRUB 2 auf dem USB-Laufwerk installieren. Ich habe nicht getestet, ob das tatsächlich funktioniert, aber essollenarbeiten.

Allerdings stoßen Sie auch auf ein weiteres Problem: Der von Ihnen beschriebene EFI-Bootmanager-Eintrag zum Booten von einem USB-Laufwerk funktioniert nichtnichtStarten Sie die EFI/ubuntu/shimx64.efiDatei, in der Ubuntu seinen ersten Bootloader speichert. Stattdessen startet diese Option die „Fallback“-EFI-Bootloaderdatei EFI/BOOT/bootx64.efi. Dieser Dateiname wird als „generischer“ Bootloader-Dateiname für Wechselmedien verwendet. Die Idee ist, dass ein Betriebssystem-Installationsprogramm oder ein anderes externes Medium wahrscheinlich keinen funktionierenden NVRAM-Eintrag hat, sodass ein standardisierter Bootloader-Speicherort zum Booten von Betriebssystem-Installationsprogrammen, Notfalldisketten usw. erforderlich ist. Wenn Sie also ein USB-Laufwerk erstellen möchten, das auf jedem x86-64 EFI-basierten Computer gebootet werden kann, müssen Sie es EFI/ubuntunach kopieren EFI/BOOTund EFI/BOOT/shimx64.efiin umbenennen EFI/BOOT/bootx64.efi. Soweit ich mich erinnere, müssen Sie es EFI/ubuntuauch an Ort und Stelle lassen, da in einer oder mehreren Binärdateien fest codierte Pfade vorhanden sind, sodass beide Verzeichnisse benötigt werden.

Ein weiterer Punkt: Wenn Sie das USB-Laufwerk nur auf einem Computer verwenden möchten, können Sie möglicherweise darauf verzichten, GRUB in zu kopieren. EFI/BOOTEinige EFIs bereinigen jedoch ihre NVRAM-Einträge, wenn sie beim Booten feststellen, dass ein Eintrag nicht zugänglich ist. Wenn Sie also das USB-Laufwerk entfernen und ohne eingestecktes Laufwerk booten, können Sie den ubuntuEintrag verlieren. Schon aus diesem Grund ist es wünschenswert, GRUB in den Sicherungsdateinamen zu kopieren.

Der Grund, warum Sie eine Eingabeaufforderung sehen, wenn Sie versuchen, die Option bei abgezogenem USB-Laufwerk grub>zu starten, liegt darin , dass die GRUB-Konfiguration von Ubuntu auf einer GRUB-Binärdatei auf dem ESP (auf Ihrer internen Festplatte) und Konfigurationsdateien in der Ubuntu-Partition (auf dem USB-Laufwerk) basiert. Wenn das USB-Laufwerk abgezogen wird, wird GRUB zwar gestartet, kann aber seine Konfigurationsdatei nicht lesen, sodass es kläglich fehlschlägt.ubuntu/boot

Antwort2

Sie sind auf den bekannten Fehler 1173457 in Grub gestoßen, bei dem immer in das primäre EFI installiert wird, anstatt dorthin, wo Sie es angeben. Sie sind jedoch auch verwirrt über den neuen UEFI-Boot-Mechanismus – die Ubuntu-Bootloader (Shim, Grub) werden in das EFI-Dateisystem in ihrem eigenen Verzeichnis /EFI/ubuntu gelegt, ohne dass Windows-Daten überschrieben werden. Die einfache Lösung besteht darin, das EFI-Dateisystem der primären Festplatte auf den USB-Stick zu kopieren und es als erstes Boot-Gerät auszuwählen. Das andere Problem ist, dass Ubuntus Grub Windows immer noch nicht booten kann, wenn Secure Boot aktiviert ist. Sie müssen das EFI-Boot-Menü verwenden (eine Funktionstaste beim Einschalten, um Geräte/OSes auszuwählen) oder Secure Boot deaktivieren.


Tragen Sie sich unbedingt in die Fehlerliste unter 1173457 ein (die Frage „Betrifft mich dieser Fehler?“). Da sich nie eine zweite Person hinzugefügt hat, wurde dieser 2013 gemeldete Fehler nie „bestätigt“. Vielleicht wurde er deshalb nie behoben.

Gute Frage zu den Updates, aber selbst wenn sie an den falschen ESP gehen, funktionieren die alten Versionen weiterhin, sodass Sie es vielleicht nie erfahren.

verwandte Informationen