webentwicklung-frage-antwort-db.com.de

Portable Ubuntu auf einer externen Festplatte für die Arbeit mit mehreren Geräten

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:

  • ext4-System (keine Flags) für alle Linux-Dateien
  • linux-Swap-Dateisystem (keine Flags, zeigt 0 Nutzung)
  • nTFS-Dateisystem für andere Dateien, Windows-Dateien usw.

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?

2
Tim

Sichern Sie immer Ihre Daten, bevor Sie Reparaturen durchführen.

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.

Wenn eine Neuinstallation sinnvoll ist

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:

  • Die EFI-Partition mit 500 MB hat FAT32 formatiert und ESP markiert
  • Linux-Partition formatiert Ext4 keine Flags
  • Swap Partition formatiert Swap keine Flags
  • NTFS-Partition

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.

Versuchen Sie, die aktuelle Installation zu reparieren

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.

Nach jeder Reparatur

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.

3
ravery