Ich schreibe dies aus Ubuntu 16.04 auf eine externe 1 TB USB-Festplatte. Auf diesem Laptop funktioniert es einwandfrei, aber wenn ich versuche, über das UEFI-Startmenü eines anderen Computers zu booten, wird das Laufwerk als externe Festplatte angezeigt. Bei Auswahl dieser Option wird jedoch nicht Linux, sondern das Windows-Betriebssystem auf dem Computer gestartet Computer. Ich habe den USB-Start aktiviert und den sicheren Start deaktiviert, um festzustellen, ob dies das Problem war, das Problem wurde jedoch nicht behoben.
Interessanter Punkt: Wenn ich meinen Laptop (der Linux ausführen wird) ohne angeschlossenen USB-Stick hochfahre, nachdem ich zuletzt Linux ausgeführt habe, erhalte ich immer noch das anfängliche Grub-Menü. Vielleicht hat mein externes Laufwerk nicht die richtigen Boot-/Grub-Informationen, um auf einem anderen Computer zu funktionieren? Vielleicht werden diese Informationen nur hier auf meinem Laptop gespeichert?
Das externe Laufwerk ist in folgende Bereiche unterteilt:
Ich möchte in der Lage sein, meine externe Festplatte an einen beliebigen Computer anzuschließen und die Linux-Distribution auszuführen. Kann mir jemand helfen, meine Distribution portabel zu machen?
Ihre Annahme ist richtig. Bei der Installation von Ubuntu wurde grub auf der EFI-Partition der internen Festplatte installiert. Damit das externe Laufwerk bootfähig ist, muss eine EFI-Systempartition mit Grub installiert sein. Normalerweise ist diese Partition die erste Partition auf dem Laufwerk. Das Verschieben der Root-Partition kann jedoch zu Startfehlern führen.
Partitionieren Sie die externe Festplatte neu. Löschen Sie die Linux-Partition und erstellen Sie eine 500-MB-Partition mit dem Format FAT32 und der Kennzeichnung ESP (Efi-Systempartition). Verwenden Sie den verbleibenden Speicherplatz für die Linux-Partition Ext4. Das Ergebnis sollte sein:
Dann installieren Sie Ubuntu neu. Verwenden Sie die manuelle Partitionierungsoption, um Ihre vorgefertigten Partitionen auszuwählen. Stellen Sie sicher, dass die EFI-Partition des internen Laufwerks auf "Nicht verwenden" eingestellt ist.
Das Booten eines externen Laufwerks erfordert die Verwendung des Standardmedienpfads. Booten Sie die LiveCD und hängen Sie die EFI-Partition auf der externen Festplatte ein (möglicherweise müssen Sie das ESP -Flag vorübergehend entfernen, um dies zu tun). Kopieren Sie EFI/ubuntu/shimx64.efi
nach EFI/boot
und benennen Sie es bootx64.efi
um. Hängen Sie die EFI-Partition aus und setzen Sie das Flag ESP, wenn Sie sie entfernen mussten.
Booten Sie von einer Live-CD und verkleinern Sie die Linux-Partition mit gparted
um 500 MB. Erstellen Sie eine neue Partition mit dem freien Speicherplatz, formatieren Sie sie in FAT32 und markieren Sie sie als ESP. Notieren Sie die UUID der neuen Partition.
Mounten Sie Ihre Linux-Partition. Bearbeiten Sie etc/fstab
. Suchen Sie nach einer Zeile ähnlich der folgenden:
# /boot/efi was on /dev/sda1 during installation
UUID=BB1E-83B5 /boot/efi vfat umask=0077 0 0
Ersetzen Sie die UUID durch die für die neue EFI-Partition.
Als nächstes mounten Sie die EFI-Partitionen für beide Laufwerke (möglicherweise müssen Sie das ESP -Flag vorübergehend entfernen). Kopieren Sie /efi/ubuntu/shimx64.efi
vom internen Laufwerk in /efi/boot/
auf dem externen Laufwerk und benennen Sie es in bootx64.efi
um. Hinweis: Sie müssen die Ordner auf den externen Laufwerken erstellen.
Stellen Sie abschließend die EFI-Partition des internen Laufwerks bereit. Löschen Sie den Ordner /EFI/ubuntu
. Starten Sie die Systemeinstellungen neu und öffnen Sie sie, indem Sie während des Startvorgangs die entsprechende Funktionstaste drücken. Ändern Sie die Startreihenfolge so, dass sich die USB-Festplatte vor dem internen Laufwerk befindet.
Sie sollten jetzt Linux starten, wenn das externe Gerät angeschlossen ist, und Windows, wenn das externe Gerät nicht angeschlossen ist.