GNU/Linux >> Tutoriels Linux >  >> Linux

Recherche inversée d'inode/fichier à partir d'un décalage dans un périphérique brut sous Linux et ext3/4 ?

Je devais juste faire une chose similaire, alors j'ai pensé que je partagerais ma solution.

Vous pouvez voir à quelle partition appartient un décalage d'octet de lecteur en vérifiant les éléments 'offset' et 'size' de la sortie udisks --show-info; ex.

[email protected]:~$ sudo udisks --show-info /dev/sda1 | grep -i 'offset'
    offset:                    1048576
    alignment offset:          0

Soustrayez ce décalage du décalage du disque pour obtenir le décalage d'octet dans la partition. Ainsi, le décalage de disque (10000000) dans /dev/sda est le décalage de partition (10000000 - 1048576) =8951424 dans /dev/sda1

Vous pouvez connaître la taille des blocs dans une partition à l'aide de la commande suivante :

[email protected]:~$ sudo tune2fs -l /dev/sda1  | grep -i 'block size'
Block size:               4096

Divisez le décalage d'octet de partition par la taille de bloc pour déterminer le décalage de bloc, dans ce cas 8951424 / 4096 =2185

Exécutez la commande suivante pour savoir quel inode occupe ce bloc :

[email protected]:~$ sudo debugfs -R "icheck 2185" /dev/sda1
debugfs 1.41.11 (14-Mar-2010)
Block   Inode number
2185    123456 

puis la commande suivante pour savoir quel est le nom de fichier pour cet inode :

[email protected]:~$ sudo debugfs -R "ncheck 123456" /dev/sda1
debugfs 1.41.11 (14-Mar-2010)
Inode   Pathname
123456  /tmp/some-filename.txt

Il y a une description plus longue de la façon dont cela à http://www.randomnoun.com/wp/2013/09/12/determining-the-file-at-a-specific-vmdk-offset


Linux
  1. Comment prévenir et récupérer de la suppression accidentelle de fichiers sous Linux

  2. Qu'est-ce qu'un numéro d'inode sous Linux ?

  3. Linux - Sysfs et Devtmpfs ?

  4. Tutoriel de base sur le système de fichiers Linux - ext2, ext3, ext4, JFS et XFS

  5. Créer et formater une partition exFAT à partir de Linux

Tout est un fichier sous Linux - Partie 2

Tout est un fichier sous Linux - Partie 1

Empêcher les fichiers et les dossiers d'être supprimés ou modifiés accidentellement sous Linux

Comment vérifier l'utilisation d'Inode à partir de cPanel et de la ligne de commande ?

Comment installer Java 8 JRE et JDK à partir du fichier RPM sous Linux

Comment Linux différencie-t-il les fichiers réels et inexistants (par exemple :périphérique) ?