Live USB auf einem USB-Laufwerk mit 2 Partitionen

33

Ich habe mich gefragt, ob ich 2 Partitionen auf einem USB-Laufwerk haben könnte, mit denen ich meinen Schlüssel als reguläre USB-Installationsdiskette (Partition1) und eine andere Partition für die reguläre Speicherung unter Windows / Ubuntu (Partition2) booten kann. Ich hätte gerne eine Diskette mit:

/dev/sdb (16GB)
 - sdb1 : ext4/fat32, LiveUSB (2GB)
 - sdb2 : fat32, storage (14GB)

Könnte dieser Schlüssel gebootet und als normales USB-Laufwerk verwendet werden?

PS: Das liegt daran, dass ich es satt habe, Ubuntu jedes Mal auf meinem USB-Laufwerk zu installieren / deinstallieren, wenn ich einen PC retten muss, und ich bin nicht bereit, ein USB-Laufwerk nur für Ubuntu-Installationsdisk zu kaufen.

MrVaykadji
quelle

Antworten:

24

Ja, Sie können ein USB-Flash-Laufwerk partitionieren, um eine Ubuntu Live-Sitzung zu starten, und es als reguläres USB-Laufwerk (für Windows zugänglich) auf separaten Partitionen verwenden. Ich konnte dies mit einem 32 GB PNY USB 2.0-Flash-Laufwerk auf einem Ultrabook-Laptop der Sony Vaio T-Serie mit UEFI und Windows 8.0 tun. Ich habe dies auch von Ubuntu Server 12.04 auf meinem 16 TB RAID5 i7-290 Server getestet.

Ich habe das USB-Flash-Laufwerk mit GParted in dieser Konfiguration partitioniert :

32GB USB Stick GParted

sdh1ist die "Speicher" -Partition, auf die von Windows aus zugegriffen werden kann. sdh2ist die bootfähige Partition von Ubuntu Desktop 12.04. Das waren meine Schritte:

1. Erstellt eine neue logische 10-GB-NTFS-Partition mit 25 MB freiem Speicherplatz 
und 0 MB freiem Speicherplatz ( muss sich zuerst auf dem Laufwerk befinden ). 2. Erstellt eine neue logische 5-GB-Fat32-Partition mit 0 MB vor und nach 3. Setzen Sie ein Boot-Flag für die zweite Partition 4. (Erstellt die anderen Partitionen, die nicht benötigt werden) 5. Zu einer Ubuntu Live-Sitzung gebootet, die auf eine DVD geladen und "Ubuntu
ohne Installation testen" im GRUB-Menü ausgewählt wurde 6. Startup Disk Creator mit angeschlossenem USB-Stick öffnen 7. Das Ubuntu-Desktop 12.04 Image und das pny USB 2.0-Flash-Laufwerk (/ dev / sdh2) mit einer
Partition von 5,0 GB wurden bereits ausgewählt, die Folie Wie viel verschoben, um Dokumente
und Einstellungen auf dem reservierten zusätzlichen Speicherplatz zu speichern, und Startdiskette erstellen ausgewählt

Ohne Auswahl des Boot-Flags erkennt der Startup Disk Creator /dev/sdhanstelle der gewünschten zweiten Partition nur das gesamte Flash-Laufwerk /dev/sdh2.

Ohne die Windows-Partition an die erste Stelle zu setzen, wird das Removable Media Bit ...

"Die Wechselmedium-Geräteeinstellung ist ein Flag, das in der SCSI-Anfragedatenantwort 
auf den SCSI-Anfragebefehl enthalten ist. Bit 7 von Byte 1 (von 0 indiziert) ist das
Wechselmedium-Bit (RMB). Ein auf Null gesetzter RMB gibt an, dass das Gerät ist kein
Wechselmedium. Ein RMB von 1 gibt an, dass das Gerät ein Wechselmedium
ist. Treiber erhalten diese Informationen mithilfe der StorageDeviceProperty-
Anforderung. "

... würde bedeuten , dass in Windows nur 1 Partition angezeigt wird:

"F. Was ist eine Superfloppy?

EIN.  
Wechselmedien ohne GPT- oder MBR-Formatierung werden als "Superfloppy" bezeichnet. 
Das gesamte Medium wird als einzelne Partition behandelt.
Der Medienhersteller führt eine MBR-Partitionierung von Wechselmedien durch. Wenn der
Datenträger über einen MBR verfügt, wird nur eine Partition unterstützt. Es ist kaum ein
Unterschied zwischen MBR-partitionierten Medien und Superfloppies zu erkennen.
Beispiele für Wechselmedien sind Diskettenlaufwerke, JAZ-Kassetten,
magnetooptische Medien, DVD-ROMs und CD-ROMs. Festplattenlaufwerke in externen Bussen
wie SCSI oder IEEE 1394 werden nicht als entfernbar angesehen. "

Hier sind einige Tools, die den RMB spiegeln (was in diesem Fall nicht
erforderlich ist ): Laxars USB Format Tool
Bootice
RMPrepUSB

Dies sind Software-Ansätze (in diesem Fall ebenfalls nicht erforderlich ):
Erstellen eines dummy.sys-Treibers
Verwenden Sie den Hitachi Microdrive Filter-Treiber

Guthaben:
TSJNachos117 Live USB auf einem USB-Laufwerk mit 2 Partitionen
http://ubuntuforums.org/showthread.php?t=1020293
https://stackoverflow.com/questions/2598502/howto-flip-removable-bit-on- usb-drive-in-c
http://www.rmprepusb.com/tutorials/multipartufd

conman253
quelle
Danke, ich werde das versuchen. Ich weiß, ich könnte einen Ordner in der gleichen Partition verwenden, aber das ist nicht anmutig. Ich möchte eine nette Sache, die in meinem Alltag vorkommt und ich möchte eine Klasse :) // Nicht zu prahlen, aber ich weiß auch, wie man Partitionstools verwendet; Ich wurde gefragt, ob ich mit einem partitionierten USB-Laufwerk booten kann oder nicht.
MrVaykadji
Es tut; Ich habe gerade überprüft, um sicher zu sein. Ich mag Ihre Idee jedoch und erweitere sie, um drei Partitionen zu erstellen: Ubuntu12.04 (bootfähig), Hirens (bootfähig) und Storage. Ich möchte auch so klassisch sein;)
conman253
Ich habe es viel einfacher gemacht als alles, was ich online gefunden habe ... endlich.
conman253
4
Gibt es einen Grund für die 25 MB vor den Partitionen? Warum 25? Unterscheidet sich die Größe basierend auf dem gesamten Speicherplatz des Flash-Laufwerks?
Stevendesu
1
Dieser Beitrag ist veraltet Die DEZA hat seit dem 14.04. Keinen Persistenzzeiger mehr.
CSCameron
8

Ich habe einen einfacheren alternativen Weg gefunden. Es gibt 2 wichtige Informationen, die man verstehen muss, warum dies funktioniert. Der erste Abschnitt befasst sich mit dem Startvorgang und der Art und Weise, wie beim ersten Selbsttest beim Einschalten (ausgeführt vom BIOS) nach einem Startdatensatz im ersten Startsektor der angeschlossenen Geräte gesucht wird. Dies ist eine kleine Datei, die im Grunde den Boot-Ausführungsprozess an den Bootloader / -manager weiterleitet, wie z. B. GRUB2 bei neueren Linux-Installationen. Weitere Informationen hierzu finden Sie in diesem sehr informativen Beitrag .

Die zweite Information besteht darin, zu verstehen, dass die ISO-Downloads für Linux-Betriebssysteme auf einer Festplatte (CD / DVD / USB) und nicht auf einer Partition installiert werden sollen. Diese ISOs müssen mit einem kleinen Tool geändert werden, das auf dem syslinux-utilsPaket namens zu finden ist isohybrid. Die ISO-Änderung für die Installation auf einer Partition erfolgt mit dem --partok Flag . Ich habe diese Informationen aus diesem Beitrag gefunden , der genau dasselbe Problem beschreibt. Ich bin mir nicht sicher, wie die --partokMagie funktioniert. Ich habe nach einer Erklärung gesucht, aber keine gefunden.

Zusammenfassend ist hier, was ich getan habe, um meine Live- PureOS- Installation von einer USB-Partition zu booten,

  1. Partitioniert mein USB mit GNOME-Datenträger, formatierte ich den Datenträger zunächst mit MBR / DOS. Ich habe eine 4-GB-Partition (FAT32) erstellt, gefolgt von einer ext4-Linux-Partition im verbleibenden Speicherplatz für meine Sicherungen.

  2. Als nächstes änderte ich die heruntergeladene ISO-Datei, um sie von der Partition bootfähig zu machen. Dazu musste ich die syslinux-utilsaus den Repositories installieren , in denen sich das isohydridTool befindet:

    sudo apt-get install syslinux-utils
    

    Ich habe dann die ISO-Datei geändert mit:

    isohybrid --partok pureos.ISO
    
  3. Ich habe dddiese ISO auf die oben genannte Partition kopiert. Sie können das Partitionsgerät aus den GNOME-Festplattendetails abrufen.

    dd if=pureos.ISO of=/dev/sdb1 bs=1M
    
  4. Von der GNOME-Festplatte aus habe ich die Partition bearbeitet und die bootfähige Option aktiviert , mit der der erforderliche Buchdatensatz installiert wird.

Ich konnte jetzt vom USB-Stick auf die Live-CD booten und sie als Wiederherstellungslösung verwenden, während meine Systemsicherungen auf der anderen Partition gespeichert wurden.

Aurovrata
quelle
Ich habe vor einem Jahr versucht, dies zum Laufen zu bringen und bin gescheitert. Offensichtlich habe ich diesen Beitrag damals nicht gefunden. Es klappt! Ich wünschte, es gäbe mehr Dokumentation - Ich bekomme eine Warnung, dass nicht alle BIOS meinen Stick booten können, was in der Tat der Fall ist. Aber das ist noch viel weiter als früher.
Matthew
2

Die einfache Antwort ist ja, aber Sie können einfacher gehen!

Stellen Sie sicher, dass Sie eine ISO-Datei mit der gewünschten Linux-Version auf dem Laufwerk und UNetbootin haben. Diese finden Sie hier: http://unetbootin.sourceforge.net/

Vergewissern Sie sich, dass Sie in der Dropdown-Liste die Option Festplatteninstallation ausgewählt haben, und kopieren Sie alle Daten vom Laufwerk, bevor Sie beginnen. Sie sollten in der Lage sein, den Rest des Raums für andere Zwecke zu nutzen!

Viperfang
quelle
Das ist nicht wirklich das, was ich tun möchte, der Grund, warum ich Partitionen trennen möchte, ist, einen sauberen Speicherplatz zu haben, ohne alle Ordner von der Ubuntu-Installationsdiskette. Sie nur zu verstecken würde nicht funktionieren, da ich das USB-Laufwerk sowohl unter Windows als auch unter Ubuntu verwende.
MrVaykadji
Außerdem erlaubt mir Unetbootin nur, das Live in Englisch zu booten, und ich möchte meine Muttersprache verwenden.
MrVaykadji
Sobald Unetbootin installiert ist, können Sie die Partition mit einem Partitionsmanager verkleinern und anschließend eine für Ihre eigenen Dateien hinzufügen (gparted würde dies perfekt tun). Zum Ändern der Sprache können Sie den Bootloader bearbeiten, um Kernel-Parameter hinzuzufügen, siehe < help.ubuntu.com/lts/installation-guide/powerpc/boot-parms.html > in Bezug auf Debian-Installer / Sprache (Sprache), Debian-Installer / Land (Land), Debian-Installer / Gebietsschema (Gebietsschema) bis erzwinge dein gewünschtes Gebietsschema
Viperfang
ja, aber kann ich trotzdem meinen USB-Stick für eine Live-Sitzung booten?
MrVaykadji
2

Anhaltende Live-Fahrt

Sie können mkusb verwenden , um ein dauerhaftes Live-Laufwerk zu erstellen. Es werden 5 Partitionen erstellt. Siehe diesen Link,

help.ubuntu.com/community/mkusb

  • Partition 1 hat die Bezeichnung 'usbdata' und das Dateisystem NTFS, das von Ubuntu und Windows zum Speichern und Übertragen von Dateien zwischen Computern verwendet werden kann.

  • Die anderen Partitionen gehören zum persistenten Ubuntu-Live-System.

    Weitere Informationen finden Sie unter diesem Link.

    help.ubuntu.com/community/mkusb/persistent#Partitions

    1. partition: (NTFS) usbdata zum Speichern und Übertragen von Dateien

    2. partition: GPT: bios_grub-Flag zum Booten im BIOS-Modus; MSDOS: Erweiterte Partition

    3. Partition: (FAT32) Startpartition

    4. Partition: (ISO 9660) geklonte ISO-Datei

    5. Partition: (ext4) Casper-RW oder Live-RW oder Persistenz

Einzelheiten

Details zu den Partitionen von und nach dem Erstellen des persistenten Live-Systems:

...
parted -s "/dev/sdd" print
Model: SanDisk Extreme (scsi)
Disk /dev/sdd: 16,0GB
Sector size (logical/physical): 512B/512B
Partition Table: gpt
Disk Flags: 

Number  Start   End     Size    File system  Name     Flags
 2      1049kB  2097kB  1049kB               primary  bios_grub
 3      2097kB  258MB   256MB   fat32        primary  boot, esp
 4      258MB   1791MB  1533MB               primary
 5      1791MB  8902MB  7111MB  ext2         primary
 1      8902MB  16,0GB  7111MB  ntfs         primary  msftdata

lsblk -o MODEL,NAME,FSTYPE,LABEL,MOUNTPOINT,SIZE "/dev/sdd"
MODEL            NAME   FSTYPE  LABEL                    MOUNTPOINT  SIZE
Extreme          sdd                                                14,9G
                 |-sdd1 ntfs    usbdata                              6,6G
                 |-sdd2                                                1M
                 |-sdd3 vfat    usbboot                              244M
                 |-sdd4 iso9660 Ubuntu 16.04.1 LTS amd64             1,4G
                 `-sdd5 ext4    casper-rw                            6,6G
</pre>
 Done :-) 
The target device is ready to use.
'ubuntu-16.04.1-desktop-amd64.iso'
was installed

gparted in 16.04 LTS erkennt ISO 9660-Dateisystem und BIOS_GRUB-Boot-Image nicht:

Bildbeschreibung hier eingeben

gparted In 17.10 sehen Sie das ISO 9660-Dateisystem und das BIOS_GRUB-Boot-Image:

Bildbeschreibung hier eingeben

Sudodus
quelle
1

Dies sollte einfach zu tun sein. Beachten Sie jedoch, dass Windows nur die erste Partition (/ dev / sdb1) sehen kann und die zweite Partition unsichtbar ist (ich weiß nicht warum). Daher würde ich empfehlen, dass die Allzweck-Speicherpartition die erste und die LiveUSB-Partition die zweite ist.

Wenn Sie danach den Schlüssel nicht zum Booten bekommen, sollten Sie in der Lage sein, das Boot- Flag mit GParted zu setzen.

Bitte beachten Sie: Obwohl ich dies bereits erfolgreich durchgeführt habe, habe ich noch nie getestet, ob dies auf einem UEFI-basierten System möglich ist, geschweige denn, dass Secure Boot verwendet wird.

TSJNachos117
quelle
Ich fürchte, ich muss diesen Punkt streiten. Ich selbst habe ein Flash-Laufwerk, das ich sowohl als LiveUSB-Version von Ubuntu als auch für die allgemeine Speicherung verwende. Meine erste Partition ist eine NTFS-Partition, die unter XP und 7 einwandfrei funktioniert. Meine zweite Partition ist eine FAT32-Partition, die eine Live-Version von Ubuntu enthält. Ich kann diese Partition nicht einmal von Windows aus sehen, auch nicht vom Datenträgermanager (diskmgmt.msc). Allerdings kann ich von dort booten und von Ubuntu lesen / darauf schreiben. Siehe den 4. Absatz HIER .
TSJNachos117
Entschuldigung für die Abwahl. Nachdem ich Ihren Kommentar gelesen hatte, stellte ich fest, dass meine Test-Ubuntu Live-Bootpartition nicht die erste war. Wenn Sie eine kleine Änderung vornehmen, gebe ich eine wohlverdiente Gegenstimme.
conman253
Was ist das für eine Bearbeitung?
TSJNachos117
Im Forum kann ich meine Abstimmungen erst ändern, wenn Ihre Antwort bearbeitet wurde. Ich habe versucht, nur <p> hinzuzufügen, aber kein Glück. Sie könnten sie einfach entfernen.
conman253
Heutzutage ermöglicht Windows 10 den Zugriff auf mehrere Partitionen vom Typ "Windows FS". Fat32, NTFS, UDF.
CSCameron
1
  1. Sie möchten den Hauptteil Ihres USB-Speichers als FAT32-Speicher mit 14 GB erhalten
  2. Sie möchten LiveUSB in Ext4 2GB einbinden

Dann folgt das Layout Ihres USB:

SDB1 14 GB Fat32-Speicher und EFI-Ordner
SDB2 2 GB Ext4 LiveUSB

  1. Sie müssen das Fat32-Teil erstellen, um es unter Windows zu sehen, da Windows ohne viele Anpassungen nur die erste Partition Ihres USB-Sticks mounten kann
  2. Diese Fat32-Partition enthält auch den EFI-Ordner zum Starten Ihres LiveUSB-Teils
  3. Wenn Sie die LiveUSB-Partition sdb2 auf Ext4 wollen. Standardmäßig bootet die integrierte Datei bootx64.efi von LiveUSB keine Ext4-Partition. Also habe ich eine optimierte bootx64.efi gemacht. Sie kopieren die Datei einfach nach sdb1 / EFI / boot /. Und es wird Ihr Ext4 LiveUSB-Teil booten. Alle meine Details hier https://github.com/sonvirgo/Ext4-LiveUSB
Sohn Nguyen
quelle
Sehr interessant. Ermöglicht diese Methode die Verwendung einer casper-rw-Partition?
CSCameron
@CSCameron Doch sicher. Sie können eine zusätzliche ext4-Partition für casper-rw hinzufügen. Soweit dies noch gilt: source $prefix/x86_64-efi/grub.cfgdamit bootx64.efi die Partition von grub findet. Aktualisieren Sie meine Antwort mit Windows 10 1703+. Sie können mehrere Partitionen in beliebiger Reihenfolge erstellen. Alle sind unter 1703+ montierbar
Son Nguyen
0

Eine einfache Lösung:

  1. Verwenden Sie den KDE-Partitions-Manager , um alle Partitionen zu löschen und eine 2,048primäre MB-Partition, FAT32, zu erstellen .

  2. Weisen Sie den Rest des freien Speicherplatzes Ihrer Datenpartition zu. Wenn Sie Interoperabilität mit Windows benötigen, wählen Sie NTFS als Dateisystem. Beachten Sie jedoch, dass beim Lesen unter Linux für alle Dateien mit diesem +xAttribut ein Attribut festgelegt ist. Andernfalls wählen Sie ext4.

  3. Verwenden Sie unetbootin , um die ISO zu schreiben (Ubuntu 18.04 ist ungefähr so ​​groß, 2 GB). Machen Sie sich keine Sorgen, dass anscheinend nur auf /dev/sdaeine bestimmte Partition geschrieben wird.

In meinem Setup werden gparteddie Partitionen nicht richtig angezeigt, während dies in KDE Partition Manager der Fall ist. Ich weiß nicht, was ich davon halten soll.

Dan Dascalescu
quelle