USB live su un'unità USB a 2 partizioni


33

Mi chiedevo se potevo avere 2 partizioni su un'unità USB che mi permettesse di avviare la mia chiave come un normale disco di installazione USB (partizione1) e un'altra partizione per l'archiviazione regolare sotto Windows / Ubuntu (partizione2). Vorrei avere un disco con:

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

Quella chiave potrebbe essere avviata e utilizzata come normale unità USB?

PS: questo perché sono stufo di installare / disinstallare Ubuntu sul mio drive USB ogni volta che devo salvare un PC, e non sono disposto ad acquistare un drive USB solo per il disco di installazione di Ubuntu.

Risposte:


24

Sì, è possibile partizionare un'unità flash USB per l'avvio in una sessione live di Ubuntu e utilizzarla come normale unità USB (accessibile da Windows) su partizioni separate. Sono stato in grado di farlo con un'unità flash USB 2.0 PNY da 32 GB su un laptop Ultrabook Sony Vaio serie T con UEFI e Windows 8.0 installati. Ho anche provato questo dal server Ubuntu 12.04 sul mio server RAID5 i7-290 da 16 TB.

Ho partizionato l'unità flash USB usando GParted in questa configurazione:

Unità flash USB da 32 GB GParted

sdh1è la partizione "Archiviazione" accessibile da Windows. sdh2è la partizione di avvio di Ubuntu desktop 12.04. Questi erano i miei passi:

1. Creato un nuovo 10 GB, ntfs, partizione logica, con 25 MB di spazio libero precedente 
e 0 MB seguenti, con etichetta Storage ( deve essere il primo sull'unità ) 2. Creata una nuova partizione logica da 5 GB, fat32, con 0 MB precedenti e seguenti 3. Impostare un flag di avvio per la seconda partizione 4. (Create le altre partizioni che non sono necessarie) 5. Avviato a una sessione live di Ubuntu caricata su un DVD e selezionato Prova Ubuntu
senza installare dal menu di GRUB 6. Apri Startup Disk Creator con l'unità flash USB inserita 7. La
partizione Ubuntu-Desktop 12.04 Image e pny USB 2.0 flash drive (/ dev / sdh2) da 5.0 GB era già selezionata, spostata la diapositiva Quanto per archiviare documenti
e impostazioni nello spazio extra riservato e selezionata Crea disco di avvio

Senza selezionare il flag di avvio, Startup Disk Creator riconoscerebbe solo l'intera unità flash come /dev/sdh, anziché la seconda partizione desiderata /dev/sdh2.

Senza mettere prima la partizione di Windows, il Bit di supporti rimovibili ...

"L'impostazione del dispositivo di supporto rimovibile è un flag contenuto nella 
risposta dei dati di richiesta SCSI al comando di richiesta SCSI. Il bit 7 del byte 1 (indicizzato da 0) è il
bit di supporto rimovibile (RMB). Un RMB impostato su zero indica che il dispositivo non è un
dispositivo multimediale rimovibile. Un RMB di uno indica che il dispositivo è un
dispositivo multimediale rimovibile . I driver ottengono queste informazioni utilizzando la
richiesta StorageDeviceProperty . "

... significherebbe solo 1 partizione visualizzata in Windows:

"D. Che cos'è un superfloppy?

UN.  
I supporti rimovibili senza formattazione GPT o MBR sono considerati "superfloppy". 
L'intero supporto viene trattato come una singola partizione.
Il produttore del supporto esegue qualsiasi partizionamento MBR di supporti rimovibili. Se il
supporto ha un MBR, è supportata solo una partizione. C'è poca
differenza distinguibile dall'utente tra i media partizionati MBR e i superfloppie.
Esempi di supporti rimovibili includono unità floppy disk, cartucce disco JAZ,
supporti magneto-ottici, DVD-ROM e CD-ROM. Le unità disco fisso su bus esterni
come SCSI o IEEE 1394 non sono considerate rimovibili. "

Ecco alcuni strumenti che capovolgono l'RMB (che in questo caso non è necessario):
Laxar's USB Format Tool
Bootice
RMPrepUSB

Questi sono approcci software (di nuovo inutili in questo caso):
Creare un driver dummy.sys
Utilizzare il cacciavite Microdrive Hitachi

Credito:
TSJNachos117 Live USB su un'unità USB a 2 partizioni
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


Grazie, ci proverò. So che potrei usare una cartella all'interno della stessa partizione, ma NON è grazioso. Voglio una cosa carina, è nella mia vita di tutti i giorni e voglio un po 'di classe :) // Non vantarmi ma so anche usare gli strumenti di partizione; ciò che mi ha fatto chiedere era se potevo o no avviare con un'unità USB partizionata.
MrVaykadji,

Lo fa; Ho appena verificato per essere sicuro. Mi piace la tua idea e mi sto espandendo per creare 3 partizioni: Ubuntu12.04 (avviabile), Hirens (avviabile) e Archiviazione. Anche a me piacerebbe essere di classe;)
conman253

Ha funzionato molto più facilmente di qualsiasi cosa abbia trovato online ... finalmente.
conman253,

4
C'è un motivo per i 25 MB che precedono le partizioni? Perché 25? Le dimensioni differiscono in base allo spazio totale dell'unità flash?
Stevendesu,

1
Questo post è obsoleto La DSC non ha più un puntatore di persistenza dal 14.04.
CSCameron

8

Ho trovato un modo alternativo che è più semplice. Ci sono 2 importanti informazioni che è necessario capire sul perché funziona. Il primo riguarda il processo di avvio e il modo in cui l'autotest all'accensione iniziale (eseguito dal BIOS) cerca un record di avvio sul primo settore di avvio dei dispositivi collegati. Questo è un piccolo file che sostanzialmente passa il processo di esecuzione del boot al boot loader / manager come GRUB2 su installazioni Linux più recenti. Per ulteriori informazioni su questo, leggi questo post molto informativo .

La seconda informazione è capire che i download ISO per i sistemi operativi Linux sono progettati per essere installati su un disco (CD / DVD / USB) e non per una partizione. Queste ISO devono essere modificate usando un piccolo strumento che si trova sulsyslinux-utils pacchetto, chiamato isohybrid. La modifica ISO per l'installazione su una partizione viene eseguita con il --partok flag . Ho trovato queste informazioni da questo post che descrivono esattamente lo stesso problema. Non sono sicuro di come --partokfunzioni la magia, ho cercato qualche spiegazione ma non sono riuscito a trovarne.

In sintesi , ecco cosa ho fatto per avviare la mia installazione PureOS live per l'avvio da una partizione USB,

  1. Partizionato il mio USB usando il disco GNOME, inizialmente ho formattato il disco usando MBR / DOS. Ho creato una partizione da 4 GB (FAT32) seguita da una partizione Linux ext4 nello spazio rimanente per i miei backup.

  2. Successivamente ho modificato il file ISO scaricato per renderlo avviabile dalla partizione. Per fare questo ho dovuto installare il syslinux-utilsdai repository, in cui isohydridrisiede lo strumento:

    sudo apt-get install syslinux-utils
    

    Ho quindi modificato il file ISO con:

    isohybrid --partok pureos.ISO
    
  3. ero solito dd per copiare questo ISO nella partizione sopra. È possibile ottenere il dispositivo di partizione dai dettagli del disco GNOME.

    dd if=pureos.ISO of=/dev/sdb1 bs=1M
    
  4. Dal disco GNOME ho modificato la partizione e controllato il opzione di avvio , che installa il record di libro richiesto.

Ora sono stato in grado di eseguire l'avvio dalla chiave USB nel CD live e utilizzarlo come soluzione di ripristino durante la memorizzazione dei backup del mio sistema sull'altra partizione.


Ho provato un anno fa a farlo funzionare e non ci sono riuscito. Ovviamente non ho trovato questo post allora. Funziona! Vorrei che ci fosse più documentazione: ricevo un avviso sul fatto che non tutti i BIOS sono in grado di avviare il mio stick, il che è davvero il caso. Ma è ancora molto più avanti di quanto non fossi prima.
Matteo,

2

La semplice risposta è sì, ma puoi andare più semplice!

assicurati di avere un ISO del sapore Linux che desideri sull'unità e su UNetbootin, disponibile da qui: http://unetbootin.sourceforge.net/

Assicurarsi di selezionare Installa disco rigido dal menu a discesa e di copiare tutti i dati dall'unità prima di iniziare. Dovresti essere in grado di utilizzare il resto dello spazio per altri scopi!


Non è proprio quello che voglio fare, il motivo per cui voglio separare le partizioni è avere uno spazio di archiviazione pulito, senza tutte le cartelle dal disco di installazione di Ubuntu. Il solo fatto di averli nascosti non funzionerebbe poiché utilizzo l'unità USB su Windows e Ubuntu.
MrVaykadji,

Inoltre, Unetbootin mi consentirà solo di avviare il live in inglese e voglio usare la mia lingua madre.
MrVaykadji,

Una volta installato unetbootin, è possibile utilizzare un gestore delle partizioni per ridurre la partizione e aggiungerne una per i propri file dopo di essa (gparted lo farebbe perfettamente) Per quanto riguarda la modifica della lingua, è possibile modificare il bootloader per aggiungere parametri del kernel, vedere < help.ubuntu.com/lts/installation-guide/powerpc/boot-parms.html > riguardo a debian-installer / lingua (lingua), debian-installer / country (nazione), debian-installer / locale (locale) a forzare il locale richiesto
Viperfang

sì, ma sarei comunque in grado di avviare la mia chiave USB per una sessione live?
MrVaykadji,

2

Live drive persistente

È possibile utilizzare mkusb per creare un'unità live persistente. Creerà 5 partizioni. Vedi questo link,

help.ubuntu.com/community/mkusb

  • La partizione n. 1 ha l'etichetta "usbdata" e il file system NTFS, che può essere utilizzato sia da Ubuntu che da Windows per archiviare file e trasferire file tra computer.

  • Le altre partizioni appartengono al sistema live persistente di Ubuntu.

    Vedi questo link per maggiori dettagli,

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

    1. partizione: (NTFS) usbdata per l'archiviazione e il trasferimento di file

    2. partizione: GPT: flag bios_grub per l'avvio in modalità BIOS; MSDOS: partizione estesa

    3. partizione: (FAT32) partizione di avvio

    4. partizione: file iso clonato (ISO 9660)

    5. partizione: (ext4) casper-rw o live-rw o persistenza

Dettagli

Dettagli sulle partizioni da e dopo aver creato il sistema live persistente:

...
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 non riconosce il file system iso 9660 e l'immagine di avvio bios_grub:

inserisci qui la descrizione dell'immagine

gparted in 17.10 vedendo il file system iso 9660 e l'immagine di avvio bios_grub:

inserisci qui la descrizione dell'immagine


1

Questo dovrebbe essere facile da fare. Tuttavia, ti informiamo in anticipo che Windows sarà in grado di vedere solo la prima partizione (/ dev / sdb1), la seconda partizione sarà invisibile (non so perché). Pertanto, consiglierei la partizione di archiviazione per uso generico di essere la prima e la partizione LiveUSB di essere la seconda.

Se dopo aver fatto questo, non è possibile ottenere la chiave per l'avvio, si dovrebbe essere in grado di impostare l' avvio flag di utilizzando GParted.

Nota: anche se l'ho già fatto con successo, non ho mai provato a fare qualcosa del genere su un sistema basato su UEFI, per non parlare di qualcosa che utilizza Secure Boot.


Temo che dovrò discutere questo punto. Io stesso ho una chiavetta USB che uso sia come versione LiveUSB di Ubuntu, sia per l'archiviazione generale. La mia prima partizione è una partizione NTFS, che funziona perfettamente sia su XP che su 7. La mia seconda partizione è una partizione FAT32, che contiene una versione live di Ubuntu. Non riesco nemmeno a vedere questa partizione da Windows, nemmeno dal gestore del disco (diskmgmt.msc). Tuttavia, posso avviare da esso e leggere / scrivere su di esso da Ubuntu. Vedi il quarto paragrafo QUI .
TSJNachos117,

Ci scusiamo per il voto negativo. Dopo aver letto il tuo commento mi sono reso conto che il mio test di partizione di avvio di Ubuntu Live non era il primo. Se fai una piccola modifica, darò un meritato voto positivo.
conman253,

Che modifica è quella?
TSJNachos117,

Il forum non mi consente di modificare il mio voto negativo fino a quando la tua risposta non viene modificata. Ho provato ad aggiungere <p> ma senza fortuna. Potresti semplicemente rimuoverli.
conman253,

Oggi Windows 10 consente l'accesso a più partizioni di "tipo Windows FS". Fat32, NTFS, UDF.
CSCameron,

1
  1. Vuoi conservare la parte principale della tua USB come memoria FAT32 da 14 GB
  2. Volete la parte LiveUSB in Ext4 2GB

Quindi seguire il layout della tua USB:

sdb1 14 GB di memoria Fat32 e cartella EFI
sdb2 2 GB Ext4 LiveUSB

  1. Devi creare il pugno della parte Fat32 per essere visto sotto Windows, poiché senza molte modifiche, Windows monta solo la prima partizione della tua USB
  2. Questa partizione Fat32 contiene anche la cartella EFI per l'avvio della parte LiveUSB
  3. Se si desidera la partizione LiveUSB sdb2 su Ext4. Per impostazione predefinita, il bootx64.efi incorporato di LiveUSB non avvierà una partizione Ext4. Quindi ho creato un bootx64.efi ottimizzato. Basta copiare il file su sdb1 / EFI / boot /. E avvierà la tua parte Ext4 LiveUSB. Tutti i miei dettagli qui https://github.com/sonvirgo/Ext4-LiveUSB

Molto interessante. Questo metodo consentirà l'uso di una partizione casper-rw?
CSCameron,

@CSCameron Eppure, certo. È possibile aggiungere una partizione ext4 aggiuntiva per casper-rw. Per quanto ancora source $prefix/x86_64-efi/grub.cfgvalido : in modo che bootx64.efi possa trovare la partizione di grub. Aggiorna la mia risposta con Windows 10 1703+, sei libero di creare più partizioni in qualsiasi ordine. Tutti possono essere montati sotto 1703+
Son Nguyen,

0

Una soluzione semplice:

  1. Usa KDE Partition Manager per eliminare tutte le partizioni e creare una 2,048partizione primaria MB, FAT32.

  2. Allocare il resto dello spazio libero alla partizione dati. Se hai bisogno di interoperabilità con Windows, scegli NTFS come file system, ma fai attenzione che quando letti da Linux, tutti i file con l' +xattributo sono impostati. Altrimenti, scegli ext4.

  3. Uso unetbootin per scrivere l'ISO (Ubuntu 18.04 ha circa quella dimensione, 2GB). Non preoccuparti che sembra scrivere solo al /dev/sdaposto di una partizione particolare.

Nella mia configurazione, gpartedle partizioni non vengono visualizzate correttamente, mentre lo fa KDE Partition Manager. Non sono sicuro di cosa pensare.

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.