En développant la réponse de William , on pourrait calculer la fin de la dernière partition en utilisant fdisk
et une calculatrice:
$ fdisk -l /dev/mmcblk0
Disk /dev/mmcblk0: 7.4 GiB, 7948206080 bytes, 15523840 sectors
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disklabel type: dos
Disk identifier: 0x00057540
Device Boot Start End Sectors Size Id Type
/dev/mmcblk0p1 2048 186367 184320 90M c W95 FAT32 (LBA)
/dev/mmcblk0p2 186368 3667967 3481600 1.7G 5 Extended
/dev/mmcblk0p5 188416 3667967 3479552 1.7G 83 Linux
Espace total utilisé en octets = secteur final de la dernière taille de secteur de la partition X (ici c'est 3667967 x 512).
Espace total utilisé en Go = espace total utilisé en octets / 1024 3 (ici, c'est 1,749023 Go).
Habituellement, il n'est pas essentiel de créer une image qui soit ramenée jusqu'au dernier bit de données utile, donc dans l'exemple ci-dessus, je créerais une image de 2 Go en utilisant la méthode décrite par William dans cette même réponse précédente :
dd if=/dev/mmcblk0 of=/path/to/pi_updated.img bs=1M count=2048
À la fin de l'image se trouvera une petite partie du guff inutile après vos dernières données utiles, mais ce n'est pas différent en principe du guff inutile qui sera écrasé lorsque vous réécrirez l'image sur votre support.
Cette méthode a fonctionné pour moi sur une dizaine de clones. S'il y a des défauts fatals dans cette méthode, ils n'ont pas encore fait surface.
dd
une quantité d'autres cartes. J'aimerais quand même savoir s'il est possible de résoudre le problème initial.