montering av en dd-bild

nyligen var jag tvungen att installera om min bärbara dator på grund av *skäl*. Jag är dock van vid att säkerhetskopiera det regelbundet genom att skapa en fullskivavbildning med dd som lagras på en separat hårddisk.

dd är ett verktyg som låter dig skapa bitvisa kopior av diskar eller partitioner i filer och vice versa. De första hundra byte av en fullskivavbildning innehåller information om partitionerna på disken.

nu ville jag återställa några data och inställningar från min senaste säkerhetskopia genom att montera den i min fräscha bärbara dator.

lösningen

en lösning skulle vara att genomsöka partitionstabellen genom att använda fdisk:

gue@gue-thinkpad:~ $ sudo fdisk – l / media / gue / GUE-USB3 / finalBackup.dd
Disk /media/gue/GUE-USB3/finalBackup.dd: 238,5 GiB, 256060514304 byte, 500118192 sektorer
enheter: sektorer av 1 * 512 = 512 byte
sektorstorlek (logisk/fysisk): 512 byte / 512 byte
I/O-storlek (minimum/optimal): 512 byte / 512 byte
Disklabel typ: dos
diskidentifierare: 0x57bf86df
Enhetsstart Start Slut sektorer storlek Id Typ
/media/gue/GUE-USB3/finalBackup32Bit_T440S_20200124.dd1 * 2048 500117503 500115456 238,5 g 83 Linux

det berättar att en partition av typ 83 (=Linux) börjar vid byte#2048 och slutar vid byte #500117503, och där kunde vi redan använda mount-kommandot för att montera det.
men – detta tillvägagångssätt blir mer komplicerat med fler partitioner, börjar vid olika förskjutningar eftersom du bara kan blanda upp saker och av misstag försöka montera saker som inte existerar.

sedan snubblade jag över kpartx.

gue@gue-thinkpad:~ $ sudo kpartx – l / media/gue/GUE-USB3 / finalBackup.dd
loop2p1 : 0 500115456 /dev/loop2 2048
loop borttagen : /dev/loop2

den läser partitionstabeller på angiven enhet och skapar enhetskartor över partitioner segment detekterade. Det kallas från hotplug på enhetskartor skapande och radering – vilket är precis vad vi vill ha.

så istället för callint det med parametern-l kunde jag starta det med parametern – A som skapar loopback-enheter och samtal hotplug (som används för att montera enheten efteråt) så här:

gue@gue-thinkpad:~ $ sudo kpartx – a / media/gue/GUE-USB3 / finalBackup.dd

Fine – systemet lägger partitionen som enhet som kan vara (om du har acces rättigheter) läsas som ett USB-minne.

för att bli av med det, ring det bara med parametern-d som tar bort loopback-enheterna:

gue@gue-thinkpad:~ $ sudo kpartx – a / media / gue / GUE-USB3 / finalBackup.dd

det är det, ha kul !

Leave a Reply