Montowanie partycji z obrazu dysku

Dostałem obraz dysku (zwykłe cat /dev/sdX > /tmp/sdX.raw) z zadaniem wyciągniecia danych z partycji. Sprawa wbrew pozorom dość prosta.

W pierwszej kolejności trzeba zbadać strukturę dysku – sprawdzić gdzie zaczynają się kolejne partycje. Idealnie do tego nadaje się parted. Wystarczy przełączyć w tryb wyświetlania rozmiarów w bajtach:

~# parted /tmp/sdX.raw
GNU Parted 3.1
Using /tmp/sdX.raw
Welcome to GNU Parted! Type 'help' to view a list of commands.
(parted) unit B
(parted) print
Disk /tmp/sdX.raw: 500107862016B
Sector size (logical/physical): 512B/4096B
Partition Table: msdos
Disk Flags: 

Number  Start        End            Size           File system     Name    Flags
 1      1048576B     200278015B     199229440B     fat32           primary  boot
 2      200278016B   4296015871B    4095737856B    linux-swap(v1)  primary
 3      4296015872B  500107837439B  495811821568B  xfs             primary

Aby zamontować partycję trzeba do polecenia mount dodać informację gdzie jest początek partycji czyli parametr offset. Przykładowo, aby zamontować trzecią partycję polecenie mount przyjmie następujący wygląd:

mounr -o loop,ro,offset=4296015872 /tmp/sdX.raw /mnt/sdX
Categories: linux
Tags: , ,