dd zum Erzeugen eines Images einer nur teilweise vollen SD-Karte

Will man von einer z.B. 16GB großen SD-Card, auf der aber lediglich ca. 4GB partitioniert sind, ein Image erzeugen, so erhält man mit dd dennoch ein 16GB großes Image. Der Befehl wäre ein simples dd if=/dev/sdb of=image.img Trotz dieser "Beschränkung" von dd kann man sich dieses Werkzeugs bedienen um ein Image der relevanten 4GB zu erhalten.  Im ersten Schritt benötigt man die akuellen Partitionierungsdaten:
root@NC10SA:~# fdisk -l /dev/sdb
 
Disk /dev/sdb: 15.9 GB, 15931539456 bytes
64 heads, 32 sectors/track, 15193 cylinders, total 31116288 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
Disk identifier: 0x000981cb
 
   Device Boot      Start         End      Blocks   Id  System
/dev/sdb1            8192      122879       57344    c  W95 FAT32 (LBA)
/dev/sdb2          122880     8511487     4194304   83  Linux
Wichtig an dieser Ausgabe ist das Ende der letzten Partition auf dem Laufwerk- in diesem Fall die Zahl 8511487, sowie die Sektorgröße 512 Bytes. Um allen Eventualitäten von dd aus dem Weg zu gehen wird zum Ende noch 1 addiert.Hieraus resultiert dann der folgende Befehl, der 8511488 512 Byte große Sektoren liest und sie in die Image-Datei schreibt.
root@NC10SA:~# dd if=/dev/sdb of=infodisplay-4g.img bs=512 count=8511488
8511488+0 records in
8511488+0 records out
4357881856 bytes (4.4 GB) copied, 257.445 s, 16.9 MB/s
Die Kontrolle der Partitionierung des erzeugten Images zeigt, dass im Image alle Partitionen enthalten sind und die Größe der der Ursprungsgröße entspricht.
root@NC10SA:~# fdisk -l infodisplay-4g.img
 
Disk infodisplay-4g.img: 4357 MB, 4357881856 bytes
255 heads, 63 sectors/track, 529 cylinders, total 8511488 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
Disk identifier: 0x000981cb
 
              Device Boot      Start         End      Blocks   Id  System
infodisplay-4g.img1            8192      122879       57344    c  W95 FAT32 (LBA)
infodisplay-4g.img2          122880     8511487     4194304   83  Linux