GNU/Linux >> Tutoriales Linux >  >> Cent OS

Cómo verificar un disco en busca de bloques defectuosos o errores de disco en CentOS / RHEL

Los discos duros pueden fallar inesperadamente y siempre es mejor mantener copias de seguridad recientes de todos los datos importantes. Tenga en cuenta que incluso si se detecta una falla actual o inminente, es posible que no haya tiempo suficiente para hacer una copia de seguridad de los datos. A continuación se presentan varios métodos que se pueden usar para identificar bloques defectuosos o errores de disco en CentOS/RHEL.

Uso de smartctl

Si hay varios errores de E/S en /var/log/messages o simplemente se sospecha que los discos duros pueden estar fallando, smartctl puede ser una herramienta útil para verificarlos. S.M.A.R.T. significa Autocontrol , Análisis y tecnología de informes . Tienes que habilitar el S.M.A.R.T. soporte en el BIOS antes de usarlo.

A continuación, instale los paquetes necesarios para ejecutar /usr/sbin/smartctl. En Red Hat Enterprise Linux, lo proporciona smartmontools paquete.

1. Verifique si su disco duro es compatible con S.M.A.R.T. :

# smartctl -i /dev/xxx

Reemplace /dev/xxx con el disco duro de interés cuando use los comandos descritos en esta publicación.

2. Para unidades SATA use:

# smartctl -i -d ata /dev/xxx

3. Habilite S.M.A.R.T. apoyar con:

# smartctl -s on /dev/xxx            ### For SCSI Disks
# smartctl -s on -d ata /dev/xxx     ### for SATA Disks

4. Ejecutar el siguiente comando como root puede ser una prueba rápida de PASA/FALLA, pero las pruebas más exhaustivas que se analizan a continuación son generalmente más concluyentes:

# smartctl -H /dev/xxx

Ejecutando smartctl en segundo plano

Para iniciar una prueba en segundo plano, ejecute lo siguiente como root:

# smartctl -t long /dev/xxx

Para acceder a los resultados, utilice el siguiente comando:

# smartctl -a /dev/xxx

Para obtener más información sobre las diversas opciones que se pueden usar con smartctl, consulte la página de manual del comando:

# man smartctl

Uso de bloques defectuosos

También puede usar el comando "badblocks" para verificar si hay bloques defectuosos en un dispositivo de disco. El comando "badblocks" puede ser muy útil para aislar problemas con la sincronización de particiones LVM dentro de Linux. Las operaciones de LVM fallarán debido a bloques defectuosos en un disco. Los bloques defectuosos en el disco de origen o de destino dentro de un espejo LVM provocarán una falla de sincronización.

Badblocks también se puede usar junto con fsck y makefs para marcar los bloques como defectuosos. Si la salida de badblocks se va a enviar a los programas e2fsck o mke2fs, es importante que el tamaño de bloque se especifique correctamente, ya que los números de bloque que se generan dependen mucho del tamaño de bloque que utiliza el sistema de archivos. Por esta razón, se recomienda encarecidamente que los usuarios no ejecuten badblocks directamente, sino que utilicen la opción -c de los programas e2fsck y mke2fs.

Advertencia :El mal uso de estos comandos puede provocar la pérdida de datos. Información adicional sobre el comando “badblocks” está disponible usando el comando “man badblocks”.

1. Use la herramienta de verificación de disco badblocks para escanear el disco duro especificado bloque por bloque. Por ejemplo, para escanear /dev/sdd emita los comandos:

# mount | grep sdd                  # find all mounted partitions of sdd
# umount /dev/sdd1                  # unmount the partitions (may be more then one)
# badblocks -n -vv /dev/sdd

Donde -n es usar el modo de lectura y escritura no destructivo. De forma predeterminada, solo se realiza una prueba no destructiva de solo lectura.

Nota :Nunca use el -w opción en un dispositivo que contiene un sistema de archivos existente. ¡Esta opción borra los datos! Si es necesario realizar una prueba de modo de escritura en un sistema de archivos existente, use -n opción en su lugar. Es más lento, pero conservará los datos.

2. Si aparecen mensajes similares a los ejemplos que se encuentran a continuación en /var/log/messages o en la consola después de la ejecución de badblocks, se recomienda hacer una copia de seguridad de los datos en los dispositivos afectados y reemplazar el dispositivo:

Apr  4 13:50:40 test kernel: sdd: dma_intr: status=0x51 { DriveReady SeekComplete Error }
Apr  4 13:50:40 test kernel: sdd: dma_intr: error=0x40 { UncorrectableError }, LBAsect=74367249, sector=74367232
Apr  4 13:50:40 test kernel: ide: failed opcode was: unknown
Apr  4 13:50:40 test kernel: end_request: I/O error, dev sdd, sector 74367232
Apr  4 13:50:42 test kernel: sdd: dma_intr: status=0x51 { DriveReady SeekComplete Error }
Apr  4 13:50:42 test kernel: sdd: dma_intr: error=0x40 { UncorrectableError }, LBAsect=74367249, sector=74367240
Apr  4 13:50:42 test kernel: ide: failed opcode was: unknown
Apr  4 13:50:42 test kernel: end_request: I/O error, dev sdd, sector 74367240
Apr  4 13:50:44 test kernel: sdd: dma_intr: status=0x51 { DriveReady SeekComplete Error }

3. El siguiente comando descargará los bloques defectuosos encontrados en el archivo de salida:badblocks.log.

# badblocks -v -o badblocks.log /dev/sdd


Cent OS
  1. Cómo crear un archivo Kickstart para CentOS/Fedora/RedHat (RHEL)

  2. ¿Cómo verificar todo el disco duro en busca de errores y sectores defectuosos?

  3. CentOS / RHEL:Cómo habilitar SSL para Apache

  4. Cómo habilitar el volcado del núcleo para aplicaciones en CentOS/RHEL

  5. Cómo comprobar los valores actuales de los parámetros de ajuste del kernel en CentOS/RHEL

Cómo verificar sectores defectuosos o bloques defectuosos en el disco duro en Linux

Cómo verificar el disco duro en busca de sectores o bloques defectuosos en Linux

Cómo habilitar la cuota de disco de usuario y grupo en CentOS 7 / RHEL 7

Cómo verificar bloques defectuosos o sectores defectuosos en el disco duro en Linux

Cómo verificar la versión de CentOS

Cómo instalar Varnish Cache 6 para Nginx en CentOS/RHEL 8