Dovevo solo fare una cosa simile, quindi ho pensato di condividere la mia soluzione.
Puoi vedere a quale partizione appartiene un drive byte offset controllando gli elementi 'offset' e 'size' dell'output di udisks --show-info; ad esempio
[email protected]:~$ sudo udisks --show-info /dev/sda1 | grep -i 'offset'
offset: 1048576
alignment offset: 0
Sottrai questo offset dall'offset del disco per ottenere l'offset di byte nella partizione. Quindi l'offset del disco (10000000) in /dev/sda è l'offset della partizione (10000000 - 1048576) =8951424 in /dev/sda1
Puoi scoprire quanto sono grandi i blocchi in una partizione usando il seguente comando:
[email protected]:~$ sudo tune2fs -l /dev/sda1 | grep -i 'block size'
Block size: 4096
Dividi l'offset del byte della partizione per la dimensione del blocco per determinare l'offset del blocco, in questo caso 8951424 / 4096 =2185
Esegui il seguente comando per scoprire quale inode occupa quel blocco:
[email protected]:~$ sudo debugfs -R "icheck 2185" /dev/sda1
debugfs 1.41.11 (14-Mar-2010)
Block Inode number
2185 123456
quindi il seguente comando per scoprire qual è il nome del file per quell'inode:
[email protected]:~$ sudo debugfs -R "ncheck 123456" /dev/sda1
debugfs 1.41.11 (14-Mar-2010)
Inode Pathname
123456 /tmp/some-filename.txt
C'è una descrizione più lunga di come questo su http://www.randomnoun.com/wp/2013/09/12/determining-the-file-at-a-specific-vmdk-offset