DiskScan es una herramienta de Unix/Linux para escanear un dispositivo de bloque y verificar si hay sectores ilegibles, además utiliza tiempos de latencia de lectura como una evaluación para una falla cercana, ya que los sectores que son problemáticos de leer generalmente implican muchos reintentos. Esto se puede utilizar para evaluar el estado del disco y tal vez decidir reemplazarlo antes de su inminente falla. La autoprueba del disco puede detectar o no dichas pistas dependiendo de la lógica de toma de decisiones del proveedor del disco.
badblocks está destinado a una tarea sencilla: encontrar bloques defectuosos en los medios. diskscan está tratando de decir mucho más sobre los medios, específicamente está tratando no solo de decir dónde hay un bloque defectuoso sino también qué bloques ya están deteriorados pero aún son legibles y también brinda información sobre la latencia de lectura de cada bloque, lo que debería ayudar a dar una evaluación general de los medios de disco.
En esencia, badblocks busca problemas fatales que ya están sucediendo y diskscan busca problemas futuros que se pueden solucionar.
Además, badblocks está esencialmente obsoleto hoy en día, ya que los propios discos reasignarán los datos y ya no existe una necesidad real de asignar los bloques defectuosos en el nivel del sistema de archivos.
Esta herramienta está enfocada a unidades SAS/SATA que funcionan a través de la interfaz SCSI del kernel.
Actualmente, las tarjetas SD y los dispositivos NVMe no se pueden escanear con esta herramienta.
Este proyecto utiliza CMake, en Debian/Ubuntu es tan simple como: apt-get install cmake make libtinfo-dev libncurses5-dev zlib1g-dev python-yaml
Para distribuciones basadas en RedHat/SuSe, primero debe instalar ninja-build y luego: yum install compat-libtermcap libtermcap-devel cmake python-yaml zlib-devel
Se proporciona un Makefile para evitar aprender los comandos ninja y hacer cosas que no son de compilación (instalar, etc.)
Para hacer la construcción:
cmake . && make
hacer la instalación
Puede controlar DESTDIR al crear paquetes y PREFIJO si /usr no es correcto.
diskscan tiene licencia GPL versión 3 o posterior.