Personalmente preferisco aggiungere usando dd
.
Presumo settori a 512 byte qui. Potrebbe esserci un caso per settori a 2048 byte, quindi basta scambiare i numeri e fare i conti.
In ogni caso sto usando un file di test da 512 MB, ad esempio:
dd if=/dev/zero of=testfs.img bs=512 count=1M
mkfs.ext4 testfs.img
MBR
Comporre l'immagine
Personalmente preferisco aggiungere il primo MB (2048 settori) all'inizio:
dd if=testfs.img skip=2048 bs=512 of=full.img
Finalmente eseguo fdisk per creare la tabella delle partizioni (o copia nella tua), ho creato 1 partizione usando i valori predefiniti.
Verifica
Per verificare, creare partizioni di loop e rilevamento automatico:
sudo losetup -fP full.img
Ed esegui file
sul dispositivo di loopback partizionato risultante:
sudo file -s /dev/loop2p1
/dev/loop2p1: Linux rev 1.0 ext4 filesystem data, UUID=ae2945fd-54b5-486f-8dd0-9b18d6ae01b4 (extents) (large files) (huge files)
GPT
Comporre l'immagine
Personalmente preferisco aggiungere i primi MB (2048 settori, poiché gdisk imposterà automaticamente questo numero poiché è 1 MB allineato) all'inizio per il MBR iniziale e 34 settori alla fine (o 2048 per un MB completo) per la fine GPT (il settore finale può essere diverso). L'omissione della fine GPT potrebbe perdere i dati:
dd if=testfs.img skip=2048 bs=512 of=full.img
dd if=/dev/zero seek=1050624 bs=512 of=full.img count=34
Infine eseguo gdisk per creare la tabella delle partizioni (o copiarla nella tua), ho creato 1 partizione usando i valori predefiniti.
Verifica
Per verificare, creare partizioni di loop e rilevamento automatico:
sudo losetup -fP full.img
Ed esegui file
sul dispositivo di loopback partizionato risultante:
sudo file -s /dev/loop2p1
/dev/loop2p1: Linux rev 1.0 ext4 filesystem data, UUID=ae2945fd-54b5-486f-8dd0-9b18d6ae01b4 (extents) (large files) (huge files)
Questo metodo non consente di indovinare, ridimensionare o allineare manualmente.