GNU/Linux >> Linux Esercitazione >  >> Linux

Ricerca inversa di inode/file dall'offset nel dispositivo raw su Linux ed ext3/4?

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


Linux
  1. Come modificare i nomi delle etichette delle partizioni Linux su EXT4 / EXT3 / EXT2 e Swap

  2. Come eliminare file e directory in Linux dalla riga di comando

  3. Come prevenire e ripristinare l'eliminazione accidentale di file in Linux

  4. Che cos'è il numero di inode in Linux?

  5. Linux:come creare un file immagine di partizione formattato da zero?

Tutto è un file in Linux – Parte 2

Tutto è file in Linux – Parte 1

Impedisci la cancellazione o la modifica accidentale di file e cartelle in Linux

Come controllare l'utilizzo di Inode da cPanel e dalla riga di comando?

Come installare Java 8 JRE e JDK dal file RPM su Linux

Differenza tra il file system creato da fdisk e il file system creato da mkfs - linux