Come formattare un disco con due partizioni, HFS+ e FAT32?

Spesso capita di voler formattare e partizionare un disco esterno, ad es. Firewire, con due con filesystems misti per poter usare il disco sia in Mac OS sia in Windows, Linux, FreeBSD o altri sistemi operativi.
In Mac OS X, anche con l'ottimo Utility Disco non è facile.
In Windows per leggere le partizioni HFS+ servirebbero utility (a pagamento) come l'ottimo MacOpener

Da Terminale è possibile creare due partizioni (HFS+ e FAT32), in modo da sopperire alle manchevolezze di Utility Disco.

Fare SEMPRE il backup prima di cominciare

  1. Agganciare il disco a Windows (con firewire o usb). Partizionare con Win, ad esempio con Partition Magic. Formattare le partizioni in FAT32 (anche quella che si vuole poi usare con HFS+).
     
  2. Agganciare il disco a Mac (firewire o usb) e controllare che venga montato (dovrebbero ora apparire due icone sulla scrivania).
     
  3. Se si vede, aprire Utility Disco e fare control-clic (o clic destro) su una partizione (non sul disco, sulle voci che appaiono spostate verso destra). Scegliere Informazione dal menu. Segnare ciò che appare nella scritta "Identificatore Disco" della prima partizione (es disk1s1). Fare lo stesso per l'altra partizione (es. disk1s2).
     
  4. Una volta segnate, fare clic su una delle partizioni e fare clic su Disattiva nella barra degli strumenti di Utility Disco. La partizione dovrebbe diventare grigia in Utility Disco e la sua icona sparire dalla Scrivania. Fare lo stesso per l'altra partizione.
     
  5. Uscire momentaneamente da Utility Disco. Aprire il Terminale.
     
  6. Digitare il comando:
    newfs_hfs -v discohfs -J /dev/CAMBIAMI
    dove CAMBIAMI va scritto in questo modo: una "r" e poi l'identificatore che hai letto in Utility Disco.
    Ad esempio se l'identificatore era "disk1s3" il comando sopra diventa:
    newfs_hfs -v miohfs -J /dev/rdisk1s3
    La "-J" attiva il journaling. Se per qualche motivo non lo si vuole, non scrivere -J nel comando (toglierlo) e non verrà attivato.
     
  7. Aspettare che finisca. Poi, scrivere il comando:
    newfs_msdos -v miofat -F 32 /dev/CAMBIAMI
    che funziona come sopra. Ad es se l'identificatore del disco FAT era "disk1s2" il comando diventa:
    newfs_msdos -v discofat -F 32 /dev/rdisk1s2
     
  8. Chiudere il Terminale. Aprire di nuovo Utility Disco.
     
  9. Fare clic sul DISCO (ora non più sulle partizioni). Fare clic su Espelli sulla barra degli strumenti.
     
  10. Spegnere/staccare il disco. Riaccendere/riattaccare il disco. Verificare che le due partizioni si vedano e siano OK.
     
  11. Agganciare il disco a Windows. Controllare che almeno la partizione FAT32 si veda.
     
  12. Se ha funzionato, auguri. Cambiate eventualmente le etichette dei dischi e divertitevi.


Marco De Vitis aggiunge:

Provato con Tiger (OSX 10.4.2) e disco IDE in box esterno Techsolo FireWire/USB2 (usando FireWire su iBook G4 e USB 2.0 su PC), e non ha funzionato: su Mac veniva montata solo la partizione FAT32, quella HFS+ non risulta valida e non può essere montata; infatti in base all'output dei comandi

"fdisk /dev/rdisk2" e "diskutil list /dev/disk2"
risulta essere ancora in formato FAT32.
Il modo più semplice per ottenere una configurazione funzionante (per lo meno nella mia situazione) dovrebbe essere un comando come questo (ATTENZIONE: cancellerà l'intero disco):
 diskutil partitionDisk disk2 2 MBRFormat JournaledHFS+ nomeHFS 60G MS-DOS nomeFAT 60G 
...dove:
  • "disk2" è il disco in questione, che nel vostro caso potrebbe avere un numero diverso;
  • "2" è il numero di partizioni da creare;
  • "MBRFormat" indica che deve essere creata una tabella delle partizioni compatibile col mondo PC;
  • "nomeHFS" è il nome che volete dare alla partizione HFS+;
  • "60G" è la dimensione della partizione che volete creare;
  • "nomeFAT" è il nome che volete dare alla partizione FAT32.

In altre parole, il comando ha la seguente sintassi:
diskutil partitionDisk <id_disco> <num_partizioni> MBRFormat <filesystem1> <nome1> <dimensione1> <filesystem2> <nome2> <dimensione2> ecc...
(la dimensione dell'ultima partizione in realtà è ininfluente, perché viene dimensionata comunque in modo da riempire tutto il resto del disco)

Il risultato sembra funzionare, anche se la struttura delle partizioni non sembra seguire a dovere le regole del mondo PC: infatti può accadere che una partizione inizi nello stesso cilindro dove finisce la precedente, e questo non è bene, e fa arrabbiare qualche software per Windows, come Partition Magic o anche il più versatile Paragon Partition Manager.

Quindi poi l'ideale sarebbe rifinire a mano la tabella delle partizioni, usando la modalità comandi di fdisk, che permette di definire esattamente i punti di inizio e fine. Non è una cosa facile e non credo di essere in grado di descrivere una procedura che sia sufficientemente universale.
Io in questo modo sono riuscito ad ottenere un partizionamento che funziona su Mac, funziona su Win, e piace anche ai programmi di partizionamento su Win.

Una nota: dopo aver rifinito le partizioni a mano le ho riformattate da Utility Disco, la seconda come "MS-DOS", ma poi l'ho dovuta riformattare da Windows perché in base a fdisk risultava essere stata formattata come "Win95 FAT-32" e non come "Win95 FAT32L", che credo sia il filesystem necessario nel caso di partizioni grandi. Oltretutto ho dovuto usare Paragon Partition Manager perché WinXP per partizioni grandi propone solo NTFS.

L'unica controindicazione di questa soluzione dovrebbe essere il fatto che forse la partizione HFS+ non può essere usata per installarci un sistema avviabile via FireWire (ma era lo stesso anche nella soluzione descritta nella FAQ). Per poter fare questo, sarebbe necessario avere nel disco, oltre all'MBR per PC, anche la mappa delle partizioni Apple, ma far convivere entrambi nello stesso disco complica ulteriormente le cose, e non ho il tempo di provare a farlo.
E` stato verificato, da parte di alcuni utenti, che il metodo funziona anche su dischi USB 2.0, in particolare il test è avvenuto su un disco Lacie Porsche Design 250GB USB 2.0 su Mac OS 10.4.7

ATTENZIONE: Le note sono inserite in modo anonimo dai visitatori del sito, e non sono state verificate da chi cura le Faq.
Nota di Roberto
In OS 10.4.9 è possible seguire la seguente procedura per partizionare un disco esterno USB con due (o più) partizioni con filesystem diversi, es. HFS+ e FAT32: 1. Aprire Utility Disco; 2. Selezionare il disco da partizionare nell'elenco a sinistra (selezionare l'icona del disco, non quella di eventuali partizioni già presenti); 3. Selezionare la scheda Inizializza e scegliere il formato File System MS-DOS dal menu a discesa, poi premere il pulsante Inizializza in basso a destra. Questa operazione formatta il disco e cancella ogni eventuale dato presente. Eseguire quindi una copia dei dati eventualmente sul disco prima di procedere; 4. Selezionare la scheda Partiziona e configurare le partizioni volute. Dal pulsante Schema volume si possono selezionare il numero di parizioni desiderate. Sulla sinistra, in Informazioni volume, si possono impostare i parametri di ogni partizione, quali nome, formato del filesystem, es. Mac Os (HFS+), MS-DOS (FAT32) oppure Unix; 5. Selezionare il pulsante Opzioni in basso e scegliere lo schema di partizione desiderato, a seconda se s'intende usare il disco con Mac Intel, PowerPC o PC Windows. In quest'ultimo caso, selezionare l'opzione Registro boot master; 65. Avviare la partizione premendo il pulsante Partiziona in basso a destra. Utilizzando questa procedura ho formattato il mio disco fisso esterno USB con due partizioni, una HFS+ ed una FAT32. Le partizioni sono visibili e funzionano sul mio iMac Intel, PC Windows XP e Xubuntu Linux.

[ Home | Elenco delle FAQ | Forum | Segnalazioni | Risorse | Feed RSS ]