GNU/Linux >> Tutoriales Linux >  >> Linux

¿Búsqueda inversa de inodo/archivo desde desplazamiento en dispositivo sin formato en Linux y ext3/4?

Solo tenía que hacer algo similar, así que pensé en compartir mi solución.

Puede ver a qué partición pertenece un desplazamiento de byte de unidad comprobando los elementos 'desplazamiento' y 'tamaño' de la salida udisks --show-info; por ejemplo

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

Reste este desplazamiento del desplazamiento del disco para obtener el desplazamiento de bytes en la partición. Entonces el desplazamiento del disco (10000000) en /dev/sda es el desplazamiento de la partición (10000000 - 1048576) =8951424 en /dev/sda1

Puede averiguar el tamaño de los bloques en una partición con el siguiente comando:

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

Divida el desplazamiento de bytes de la partición por el tamaño del bloque para determinar el desplazamiento del bloque, en este caso 8951424/4096 =2185

Ejecute el siguiente comando para averiguar qué inodo ocupa ese bloque:

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

luego el siguiente comando para averiguar cuál es el nombre de archivo para ese inodo:

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

Hay una descripción más larga de cómo funciona esto en http://www.randomnoun.com/wp/2013/09/12/determining-the-file-at-a-specific-vmdk-offset


Linux
  1. Cómo cambiar los nombres de las etiquetas de las particiones de Linux en EXT4/EXT3/EXT2 e intercambiar

  2. Tutorial básico del sistema de archivos de Linux:ext2, ext3, ext4, JFS y XFS

  3. Crear y formatear una partición exFAT desde Linux

  4. ¿Cómo diferencia Linux entre archivos reales e inexistentes (p. ej.:dispositivo)?

  5. Android - ¿Programa Linux para transferir archivos desde/hacia un dispositivo Android?

Todo es un archivo en Linux - Parte 2

Todo es archivo en Linux – Parte 1

Evite la eliminación o modificación accidental de archivos y carpetas en Linux

¿Cómo verificar el uso de Inode desde cPanel y la línea de comandos?

Cómo instalar Java 8 JRE y JDK desde un archivo RPM en Linux

Diferencia entre el sistema de archivos creado por fdisk y el sistema de archivos creado por mkfs - linux