So che questa è una vecchia domanda, ma vorrei mostrare come eseguire questo processo su Mac, perché non è così semplice: fdisknon ha l' -lopzione e truncatenon è installato di default:
1. Passaggio 1: installare troncare su Mac OS X:
Hai bisogno di MacPorts o Homebrew per questo. Uso i MacPorts. Se non ne possiedi uno, vai avanti e installalo prima. Collegamento a MacPorts
Ora, possiamo installare troncato . Apri il tuo Terminale e digita:
sudo port install truncate
Per l'installazione di Brew:
brew install truncate
Questo dovrebbe farlo.
2. Usa Utility Disco per montare il nostro IMG in modo che sia visibile al comando del terminale diskutil .
Tra un momento vedrai perché abbiamo bisogno di questo passaggio. Apri l'app Utility Disco. Fai clic su File (nella barra in alto) -> Apri immagine disco e seleziona il tuo file IMG.
3. Controllare le dimensioni della partizione dell'IMG e dove è montato.
Su un terminale, digitare:
diskutil list
E dovrebbe mostrare qualcosa del genere, da qualche parte alla fine:
/dev/disk3 (disk image):
#: TYPE NAME SIZE IDENTIFIER
0: FDisk_partition_scheme +16.0 GB disk3
1: Windows_FAT_32 boot 62.9 MB disk3s1
2: Linux 3.9 GB disk3s2
Quindi, vediamo che circa 12 GB non sono partizionati. Dobbiamo troncare quelli.
Il motivo per cui abbiamo bisogno di questo comando è verificare dove è montata l'immagine del disco. Nel mio caso, è sotto: / dev / disk3
4. Scopri le dimensioni effettive della partizione.
3,9 GB e 62,9 MB sono valori che non funzionano con troncato. Dobbiamo trovare le dimensioni della partizione in byte.
5. Esegui fdisk .
Nel tuo Terminale, esegui questo comando:
fdisk /dev/diskX
Dove X è il numero che hai scoperto nel passaggio precedente. Ciò dovrebbe comportare qualcosa del genere:
Starting Ending
#: id cyl hd sec - cyl hd sec [ start - size]
------------------------------------------------------------------------
1: 0C 0 130 3 - 8 40 32 [ 8192 - 122880] Win95 FAT32L
2: 83 8 40 33 - 478 79 49 [ 131072 - 7553024] Linux files*
3: 00 0 0 0 - 0 0 0 [ 0 - 0] unused
4: 00 0 0 0 - 0 0 0 [ 0 - 0] unused
6. È tempo di troncare !
Sul tuo terminale, cdnella directory in cui si trova la tua immagine. Allora scrivi:
truncate FILE SIZE
FILE è il tuo file ovviamente.
SIZE è la dimensione in byte. Quello che ho fatto è stato aggiungere alla colonna delle dimensioni del fdiskcomando, la colonna iniziale e moltiplicare per 512. Quindi, nel mio caso, DIMENSIONE sarà: 512 * (7553024 + 131072) = 3934257152 , che è di circa 3,9 GB.
Sarà necessario l' inizio e la dimensione della dell'ultima partizione che viene indicato da fdisk. (Non necessariamente il più grande, ma quello alla fine del file IMG)
Ho sperimentato un po 'e ogni volta che ho inserito 7553024 * 512 o (7553024 + 1) * 512 byte, il file IMG era corrotto. Quindi, per essere sicuro, fallo come indico sopra. Potrebbe aggiungere più di quanto effettivamente necessario, ma è un'opzione sicura.
7. (Facoltativo) Verifica facilmente se l'IMG non è danneggiato.
Vai ancora una volta in Utility Disco e prova ad aprire il nuovo file IMG come prima. Se monta, puoi anche vedere la nuova dimensione (più piccola) . Se non monta, qualcosa è andato storto. (Forse prova ad aumentare le dimensioni nel truncatecomando)
Questo non è il test migliore, ma è un modo sicuro per verificare se la nuova IMG è corrotta o meno. Quindi, non ci contare, ma vale la pena provare ...
Spero che qualcuno lo trovi utile!
dd if=/dev/path/to/SD/card of=~/SpecialImage.img, quindi installa GParted ed eseguigparted ~/SpecialImage.img. Una volta che GParted apre il tuo.imgfile, ridimensiona semplicemente le partizioni a tuo piacimento! (Entrambi i comandi devono essere eseguiti come root,sudo sudovrebbero darti ciò di cui hai bisogno. Quando si$passa a a#, sei root. Fai attenzione, questo è l'equivalente Linux di Dio.) GParted è fondamentalmente un frontend GUI per la gestione arcana del partiton strumenti di cui avrai bisogno. L'uso di GParted rende tutto molto più semplice e più probabile per avere successo.