Cómo buscar archivos a través de hashsums

Cómo buscar archivos a través de hashsums

Busco archivos a menudo en mi sistema de archivos usando el treecomando y grep, o el findcomando, pero recientemente descargué contenido de un sitio, pero olvidé dónde lo guardé, ahora sé que SHA256sum, pero no lo sé. su nombre, y no conozco nada de su contenido. Entonces, ¿hay alguna manera de buscar en mi sistema algún archivo que coincida con ese hashsum en particular? Y si aún no existe una manera sencilla, ¿alguien puede sugerir un script que me permita completar esta tarea?


Información del sistema operativo:

Description:    Ubuntu 15.04
Release:    15.04

Respuesta1

Utilizar esta:

#!/bin/bash
saved='b3eeb9430063ee4db5f80b97d4dfb4c4f7667e6e58fd12f849a4ed6779b7f212'
find /home/user/ -type f | while IFS= read -r file; do
    [[ "$(sha256sum "$file" | cut -d' ' -f1)" == $saved ]] && echo "$file"
done
  • savedcontendrá el hashsum del archivo que tienes

  • Encontrará todos los archivos /home/user/(reemplácelos con las ubicaciones que desee) y subdirectorios y comparará sus sumas hash consaved

  • Si coincide, imprimirá el nombre del archivo.

Ejecute el script sudoen caso de que desee buscar lugares en los que no tenga los permisos necesarios.

Tenga en cuenta que esta operación consume bastante CPU, ya que calculará los hashes de todos los archivos y luego intentará hacer coincidir uno con uno saved. No conozco ninguna herramienta independiente que pueda lograr lo que desea, por lo que este podría ser el camino a seguir dada la tarea y los aportes en mano.

También tenga en cuenta que puede minimizar la cantidad de archivos que se buscarán aplicando opciones relevantes, por findejemplo, si se accedió al archivo dentro de las últimas 24 horas de uso find /location -atime 0 -type f.

información relacionada