Diagnóstico y sustitución de un disco duro defectuoso (Servidor Dedicado o Bare Metal Linux con software RAID)
Utilice la función «Imprimir» al final de la página para crear un PDF.
Si recibes una notificación sobre un fallo en el disco duro o detectas anomalías en el sistema, es necesario actuar con rapidez para restablecer la redundancia de tu matriz RAID. En este artículo aprenderás cómo identificar un disco duro defectuoso en un Servidor Dedicado Linux o un Servidor Bare Metal Linux con software RAID, y cómo preparar el servidor para la sustitución del disco defectuoso.
Notas
Este artículo presupone conocimientos básicos de administración de servidores con Linux. Si tienes alguna pregunta sobre el reemplazo de un disco duro defectuoso o necesitas ayuda, ponte en contacto con IONOS: Atención al Cliente
Los ejemplos mostrados en este artículo se refieren principalmente a discos duros SATA/SAS tradicionales en configuraciones de software RAID con nombres de dispositivo como /dev/sda y /dev/sdb. En el caso de las NVMe, los nombres de dispositivo, las herramientas de diagnóstico y, según la configuración, también los pasos individuales pueden variar.
Para garantizar la máxima disponibilidad, es necesario que supervises el software RAID de tu servidor. Si recibes un correo electrónico de notificación sobre un disco duro defectuoso o detectas un fallo en un disco duro, debes identificar el disco duro defectuoso y preparar el servidor para la sustitución del soporte de datos defectuoso. A continuación, ponte en contacto con Atención al Cliente para solicitar el cambio del disco duro.
Advertencia
Los sistemas RAID permiten obtener una mayor disponibilidad y/o una mayor velocidad. Sin embargo, no sustituyen a las copias de seguridad periódicas. Para evitar la pérdida de datos, te recomendamos crear una copia de seguridad con regularidad. Asegúrate también de crear una copia de seguridad antes de realizar los pasos descritos a continuación para garantizar la seguridad de tus datos.
Encontrarás más información sobre la creación de copias de seguridad en el siguiente índice de nuestro Centro de Ayuda: soluciones de backup
Comprobar el estado del software RAID
Establece una conexión SSH con tu servidor e inicia sesión en él con tu cuenta de root. Encontrarás las instrucciones correspondientes en los siguientes artículos:
Establecer una conexión SSH con tu servidor Linux desde un ordenador con Microsoft Windows
Establecer una conexión SSH con tu servidor Linux desde un ordenador con LinuxPara comprobar el estado del RAID de software, introduce el siguiente comando en el shell:
cat /proc/mdstat
Interpretación de los resultados
RAID intacto: un RAID que funciona correctamente se indica mediante el estado [UU] (en RAID 1) o [UUUU] (en RAID 5/6 con 4 discos duros). Cada «U» significa «Up» (operativo).
Dispositivo defectuoso o ausente: un [_U] o [U_] indica que falta un disco duro o que no está sincronizado.
Marca de fallo: una (F) detrás de un dispositivo (p. ej.: sdb1[2](F)) significa que el sistema ya ha marcado el disco como defectuoso («faulty») a nivel de software.
En configuraciones con 2 SSD (sistema operativo) y discos duros adicionales (datos), verás varios dispositivos md:
- md1, md2, md127 o similares (a menudo RAID 1 para el arranque/raíz)
- md11 o similares (a menudo RAID 5 o 6 para datos)
Comprueba todas las secciones de la salida para ver si faltan marcas «Us» o «(F)». Aquí tienes un ejemplo de un RAID intacto:
[root@localhost ~]# cat /proc/mdstat
Personalities : [raid1]
read_ahead 1024 sectors
md2 : active raid1 sda3[1] sdb3[0]
262016 blocks [2/2] [UU]
md1 : active raid1 sda2[1] sdb2[0]
119684160 blocks [2/2] [UU]
md0 : active raid1 sda1[1] sdb1[0]
102208 blocks [2/2] [UU]
unused devices: <none>
El ejemplo anterior muestra tres dispositivos múltiples o matrices RAID (md0, md1, md2). Para cada una de estas unidades lógicas se indica de qué particiones se compone y en qué unidades se encuentran dichas particiones. La unidad lógica md0 está compuesta por las particiones sda1 y sdb1. En la línea que aparece debajo de cada unidad lógica, al final de la misma, entre corchetes, se muestra el estado de cada una de las particiones.
Si falta un disco duro o está defectuoso, esto suele indicarse con un [_U] o un [U_]. Una (F) detrás de una partición (p. ej.: sdb3[2] (F)) significa que se ha marcado como «faulty» (defectuosa).
En el siguiente ejemplo, todas las unidades lógicas tienen montada una única partición, que se encuentra en el disco duro sda. La partición correspondiente, que se encuentra en el segundo disco duro sdb, no está montada. Esto también se puede reconocer por la entrada [_U]. Las particiones no montadas del disco duro sdb indican que dicho disco duro presenta un error o un fallo.
[root@localhost ~]# cat /proc/mdstat
Personalities : [raid1]
read_ahead 1024 sectors
md0 : active raid1 sda1[1]
102208 blocks [2/1] [_U]
md1 : active raid1 sda2[1]
119684160 blocks [2/1] [_U]
md2 : active raid1 sda3[1]
262016 blocks [2/1] [_U]
unused devices: <none>
En el siguiente ejemplo, un disco duro defectuoso sigue integrado en la matriz RAID. Esto se puede apreciar por la información (F) que se muestra junto a md1.
[root@localhost ~]# cat /proc/mdstat
Personalities : [raid1]
md3 : active raid1 sda3[0] sdb3[2](F)
439553856 blocks super 1.0 [2/1] [U_]
bitmap: 1/4 pages [4KB], 65536KB chunk
md1 : active raid1 sdb1[2](F) sda1[0]
19529600 blocks super 1.0 [2/1] [U_]
unused devices: <none>
Diagnóstico de errores en los discos duros
Para detectar errores en los discos duros, te recomendamos proceder de la siguiente manera:
Instala smartctl. smartctl, un programa de línea de comandos para monitorizar los soportes de datos mediante SMART (Self-Monitoring, Analysis and Reporting Technology). Con este programa puedes comprobar si un disco duro está defectuoso. Forma parte del conjunto de herramientas Smartmontools, las cuales están disponibles como paquetes para muchas distribuciones de Linux. Encontrarás más información en la siguiente página: Paquetes de Smartmontools
Nota
En algunos casos, puede ocurrir que no se detecte un fallo en el disco duro mediante los valores SMART. Por ello, te recomendamos analizar además el archivo de registro /var/log/messages.
Instalar Smartctl
El comando de instalación varía en función del sistema operativo que utilices. Ejecuta el comando adecuado para tu distribución:
Para instalar smartctl, inicia sesión en el servidor como persona administradora.
Instala los paquetes necesarios según su distribución:
AlmaLinux 9 y 10, así como Rocky Linux 9 y 10:
dnf install smartmontools
Debian 12 y 13, así como Ubuntu 24.04 y 26.04:
sudo apt-get install smartmontools
Consultar la información del disco duro
Para ver una lista de los discos duros, introduce el siguiente comando:
smartctl --scan
Por ejemplo:
[root@localhost ~]# smartctl --scan
/dev/sda -d scsi # /dev/sda, SCSI device
/dev/sdb -d scsi # /dev/sdb, SCSI device
Para obtener información detallada que te ayude a diagnosticar el fallo, introduce el siguiente comando:
smartctl -iHAl error [NOMBRE DEL DISCO DURO]
Notas
Las interfaces de los dispositivos deben indicarse en el siguiente formato:
Dispositivos SCSI / SATA:
smartctl -iHAl error /dev/sd[a-z]
Por ejemplo:
[root@localhost ~] # smartctl -iHAl error /dev/sda
Los dispositivos NVMe utilizan denominaciones diferentes, por ejemplo, /dev/nvme0 o /dev/nvme0n1, y, dependiendo de la consulta, requieren herramientas distintas o complementarias.
Tras introducir el comando, se muestra, por ejemplo, la siguiente información:
[root@localhost ~]# smartctl -iHAl error /dev/sda
smartctl 6.5 2016-05-07 r4318 [x86_64-linux-3.10.0-862.14.4.el7.x86_64] (local build)
Copyright (C) 2002–16, Bruce Allen, Christian Franke, www.smartmontools.org
=== START OF INFORMATION SECTION ===
Device Model: HGST HUS722T1TALA604
Serial Number: WMC6N0K2RW66
LU WWN Device Id: 5 0014ee 004722db0
Firmware Version: RAGNWA07
User Capacity: 1,000,204,886,016 bytes [1.00 TB]
Sector Size: 512 bytes logical/physical
Rotation Rate: 7200 rpm
Form Factor: 3.5 inches
Device is: Not in the smartctl database [for details, use: -P showall]
ATA Version is: ACS-3 T13/2161-D revision 5
SATA Version is: SATA 3.1, 6.0 Gb/s (current: 6.0 Gb/s)
Local Time is: Fri 3 May 07:45:14 2019 UTC
SMART support is: Available – the device has SMART capability.
SMART support is: Enabled
=== START OF READ SMART DATA SECTION ===
SMART overall-health self-assessment test result: PASSED
SMART Attributes Data Structure revision number: 16
Vendor-specific SMART attributes with thresholds:
ID# ATTRIBUTE_NAME FLAG VALUE WORST THRESH TYPE UPDATED WHEN_FAILED RAW_VALUE
1 Raw_Read_Error_Rate 0x002f 200 200 051 Pre-fail Always 0
3 Spin_Up_Time 0x0027 183 183 021 Pre-fail Always 3833
4 Start_Stop_Count 0x0032 100 100 000 Old_age Always 9
5 Reallocated_Sector_Ct 0x0033 200 200 140 Pre-fail Always 0
7 Seek_Error_Rate 0x002e 200 200 000 Old_age Always 0
9 Power_On_Hours 0x0032 097 097 000 Old_age Always 2560
10 Spin_Retry_Count 0x0032 100 253 000 Old_age Always 0
11 Calibration_Retry_Count 0x0032 100 253 000 Old_age Always 0
12 Power_Cycle_Count 0x0032 100 100 000 Old_age Always 9
16 Unknown_Attribute 0x0022 000 200 000 Old_age Always 26802171994
183 Runtime_Bad_Block 0x0032 100 100 000 Old_age Always 0
192 Power-Off_Retract_Count 0x0032 200 200 000 Old_age Always 4
193 Load_Cycle_Count 0x0032 200 200 000 Old_age Always 67
194 Temperature_Celsius 0x0022 116 111 000 Old_age Always 31
196 Reallocated_Event_Count 0x0032 200 200 000 Old_age Always 0
197 Current_Pending_Sector 0x0032 200 200 000 Old_age Always 0
198 Offline_Uncorrectable 0x0030 100 253 000 Old_age Offline 0
199 UDMA_CRC_Error_Count 0x0032 200 200 000 Old_age Always 0
200 Multi_Zone_Error_Rate 0x0008 100 253 000 Old_age Offline 0
SMART Error Log Version: 1
No Errors Logged
Interpretación de los parámetros y diagnóstico de errores
Analiza la información detallada que has obtenido mediante el comando
smartctl -iHAl error [NOMBRE DEL DISCO DURO].
En la primera sección se muestra información que te permitirá identificar el disco duro:
=== START OF INFORMATION SECTION ===
Device Model: HGST HUS722T1TALA604
Serial Number: WMC6N0K2RW66
LU WWN Device Id: 5 0014ee 004722db0
Firmware Version: RAGNWA07
User Capacity: 1,000,204,886,016 bytes [1.00 TB]
Sector Size: 512 bytes logical/physical
Rotation Rate: 7200 rpm
Form Factor: 3.5 inches
Device is: Not in the smartctl database [for details, use: -P showall]
ATA Version is: ACS-3 T13/2161-D revision 5
SATA Version is: SATA 3.1, 6.0 Gb/s (current: 6.0 Gb/s)
Local Time is: Fri 3 May 07:45:14 2019 UTC
SMART support is: Available – device has SMART capability.
SMART support is: Enabled
En esta sección se muestran, entre otros datos, el modelo del dispositivo y el número de serie del disco duro comprobado.
En la segunda sección, Smartctl evalúa el estado actual del disco duro. Si en lugar del valor «PASSED», aparecen «Failed» o «UNKNOWN», debes solicitar la sustitución del disco duro en cuestión lo antes posible.
=== START OF READ SMART DATA SECTION ===
SMART overall health self-assessment test result: PASSED
En la tercera sección se detallan los VALORES SMART calculados. Junto a cada valor porcentual actual (VALUE), se indican el peor valor jamás registrado (WORST) yel valor límite correspondiente (THRESH). Si el valor porcentual actual (VALUE) o el peor valor jamás registrado (WORST) supera el valor umbral (THRESH), se muestra una advertencia SMART en la columna WHEN_FAILED (por ejemplo, FAILING_NOW).
SMART Attributes Data Structure revision number: 16
Vendor-specific SMART attributes with thresholds:
ID# ATTRIBUTE_NAME FLAG VALUE WORST THRESH TYPE UPDATED WHEN_FAILED RAW_VALUE
1 Raw_Read_Error_Rate 0x002f 200 200 051 Pre-fail Always 0
3 Spin_Up_Time 0x0027 183 183 021 Pre-fail Always 3833
4 Start_Stop_Count 0x0032 100 100 000 Old_age Always 9
5 Reallocated_Sector_Ct 0x0033 200 200 140 Pre-fail Always 0
7 Seek_Error_Rate 0x002e 200 200 000 Old_age Always 0
9 Power_On_Hours 0x0032 097 097 000 Old_age Always 2560
10 Spin_Retry_Count 0x0032 100 253 000 Old_age Always 0
11 Calibration_Retry_Count 0x0032 100 253 000 Old_age Always 0
12 Power_Cycle_Count 0x0032 100 100 000 Old_age Always 9
16 Unknown_Attribute 0x0022 000 200 000 Old_age Always 26802171994
183 Runtime_Bad_Block 0x0032 100 100 000 Old_age Always 0
192 Power-Off_Retract_Count 0x0032 200 200 000 Old_age Always 4
193 Load_Cycle_Count 0x0032 200 200 000 Old_age Always 67
194 Temperature_Celsius 0x0022 116 111 000 Old_age Always 31
196 Reallocated_Event_Count 0x0032 200 200 000 Old_age Always 0
197 Current_Pending_Sector 0x0032 200 200 000 Old_age Always 0
198 Offline_Uncorrectable 0x0030 100 253 000 Old_age Offline 0
199 UDMA_CRC_Error_Count 0x0032 200 200 000 Old_age Always 0
200 Multi_Zone_Error_Rate 0x0008 100 253 000 Old_age Offline 0
Los siguientes parámetros pueden indicar un fallo inminente del disco duro antes de que aparezca una advertencia SMART:
Reallocated_Sector_Ct: este parámetro indica el número de sectores que ya se han reasignado debido a errores de lectura. Cuando un sector ya no se puede leer, escribir o comprobar correctamente, el controlador le asigna automáticamente un sector de sustitución procedente de la zona de reserva del disco duro. El sector original defectuoso se marca de forma permanente como defectuoso y deja de utilizarse.
Nota
Un valor superior a cero no es necesariamente motivo de preocupación, siempre que se mantenga estable durante un período prolongado. Sin embargo, un indicador crítico de un fallo inminente del disco duro es un número cada vez mayor de sectores reasignados. Por lo tanto, para detectar un defecto a tiempo, debes registrar este valor periódicamente y, en caso de que se produzca un aumento continuo, solicitar inmediatamente la sustitución del disco.
Current_Pending_Sector: indica el número de sectores inestables que están a la espera de un remapeo (Remapping). Cuando un sector no se puede leer ni escribir correctamente, se le asigna inicialmente el estado Current_Pending_Sector. En este estado, el sector no se reasigna, ya que se desconocen los datos que contiene. Solo tras varios intentos fallidos de lectura o escritura se asigna un sector de sustitución y el sector defectuoso se marca de forma permanente como ilegible. El valor Current_Pending_Sector es un indicador importante de que es necesario sustituir el disco duro. Si este valor es distinto de cero, a menudo significa que el disco duro está a punto de fallar.
Offline_Uncorrectable: indica el número de errores no corregibles durante el acceso de lectura y escritura a los sectores.
La última sección se refiere al registro interno del disco duro. Aquí se registran los errores cuando el disco duro no ha procesado correctamente las tareas del servidor. Si en esta sección se muestra un número de errores de al menos dos dígitos, debes solicitar la sustitución del disco duro lo antes posible.
SMART Error Log Version: 1
No Errors Logged
Consultar información detallada sobre la sustitución del disco duro
Para poder tramitar la sustitución del disco duro defectuoso, se necesita la siguiente información:
Denominación del disco duro en el RAID (p. ej.: sda)
Número de serie
Modelo
Archivo de registro (opcional)
Crear un registro SMART
Para generar un registro SMART completo, introduce el siguiente comando:
smartctl -x [NOMBRE DEL DISCO DURO]
Por ejemplo:
[root@localhost ~]# smartctl -x /dev/sda
Si ya no es posible acceder al disco duro mediante smartctl, puedes obtener la información necesaria con el programa hdparm. Para instalar hdparm:
AlmaLinux 9 y AlmaLinux 10, Rocky Linux 9 y Rocky Linux 10
dnf -y install hdparm
Debian 12 y 13, así como Ubuntu 24.04 y 26.04:
sudo apt-get update
sudo apt-get install hdparm
A continuación, introduce el siguiente comando para obtener la información necesaria para el cambio de disco duro:
hdparm -i /dev/sda
Notas
Si el registro SMART se ha creado tal y como se describe anteriormente, esta información es suficiente. A continuación, puedes solicitar la sustitución del disco duro defectuoso. Para ello, ponte en contacto con nuestro equipo de Atención al Cliente.
Si no puedes consultar el número de serie del disco duro defectuoso mediante smartctl, también puedes facilitar al equipo de Atención al Cliente el número de serie del disco o discos duros que funcionan correctamente.
hdparm es adecuado principalmente para discos duros SATA/ATA clásicos y no es compatible con dispositivos NVMe. Si en tu sistema se utilizan unidades NVMe, la información necesaria sobre los dispositivos no se puede obtener con hdparm, sino que, por lo general, se debe utilizar herramientas NVMe específicas de la distribución, como nvme-cli. No obstante, este artículo describe la sustitución de discos duros clásicos en configuraciones RAID por software con nombres de dispositivos como /dev/sda y /dev/sdb.
Preparar el servidor para la sustitución del disco duro
En el siguiente ejemplo se supone que hay que sustituir el segundo disco duro (sdb). Durante la comprobación del estado, se muestra, por ejemplo, el siguiente estado del RAID de software:
[root@localhost ~]# cat /proc/mdstat
Personalities : [raid1]
md3 : active raid1 sda3[0] sdb3[2]
439553856 blocks super 1.0 [2/1] [UU]
md1 : active raid1 sdb1[2] sda1[0]
19529600 blocks super 1.0 [2/1] [UU]
unused devices: <none>
En este ejemplo, el segundo disco duro (sdb) sigue integrado en el RAID y, por lo tanto, sigue en funcionamiento.
Marcar manualmente el dispositivo RAID como «faulty» para eliminarlo del RAID
Para eliminar el disco duro defectuoso de la matriz RAID, márcalo como «faulty». Para ello, introduce el siguiente comando:
[root@localhost ~]# mdadm RUTA_DEL_ARRAY_RAID -f RUTA_DEL_DISCO_DURO
En los ejemplos que se muestran a continuación, se marcan como «faulty» los discos duros sdb3 y sdb1, respectivamente:
[root@localhost ~]# mdadm /dev/md3 -f /dev/sdb3
mdadm: set /dev/sdb3 faulty in /dev/md3
[root@localhost ~]# mdadm /dev/md1 -f /dev/sdb1
mdadm: set /dev/sdb1 faulty in /dev/md1
Tras introducir el comando, el RAID presenta el siguiente estado:
[root@localhost ~]# cat /proc/mdstat
Personalities : [raid1]
md3 : active raid1 sda3[0] sdb3[2](F)
439553856 blocks super 1.0 [2/1] [U_]
md1 : active raid1 sdb1[2](F) sda1[0]
19529600 blocks super 1.0 [2/1] [U_]
unused devices: <none>
Eliminar una partición del RAID
Para eliminar una partición del RAID, introduce el siguiente comando:
[root@localhost ~]# mdadm -r /RUTA_DEL_ARRAY_RAID /RUTA_DEL_DISCO
En los ejemplos que se muestran a continuación, se eliminan los discos duros sdb3 y sdb1 de los RAID md3 y md1, respectivamente:
[root@localhost ~]# mdadm -r/dev/md3 /dev/sdb3
mdadm: se ha eliminado en caliente /dev/sdb3 de /dev/md3
[root@localhost ~]# mdadm -r /dev/md1 /dev/sdb1
mdadm: se ha eliminado en caliente /dev/sdb1 de /dev/md1
A continuación, comprueba el estado del RAID. En este ejemplo, el RAID que se ha preparado para la sustitución de discos duros presenta el siguiente estado final:
[root@localhost ~]# cat /proc/mdstat
Personalities : [raid1]
md3 : active raid1 sda3[0]
439553856 blocks super 1.0 [2/1] [U_]
md1 : active raid1 sda1[0]
19529600 blocks super 1.0 [2/1] [U_]
unused devices: <none>
Comprobar las particiones de swap utilizadas
Comprueba qué particiones de intercambio utiliza el sistema operativo. Para ello, introduce el siguiente comando:
[root@localhost ~]# cat /proc/swaps
Filename Type Size Used Priority
/dev/sda2 partition 9765884 0 -1
/dev/sdb2 partition 9765884 0 -2
Como alternativa, puedes comprobar qué particiones de swap están definidas en fstab introduciendo el siguiente comando:
[root@localhost ~]# grep swap /etc/fstab
/dev/sda2 none swap sw
/dev/sdb2 none swap sw
Desactivar la partición de swap en el dispositivo defectuoso
Desactiva la partición de swap del disco duro defectuoso para que pueda ser sustituido. Para ello, introduce el siguiente comando:
[root@localhost ~]# swapoff RUTA_DE_LA_PARTICIÓN
Por ejemplo:
[root@localhost ~]# swapoff /dev/sdb2
Nota
Si no se desactiva la partición de intercambio del disco duro defectuoso y se sustituye dicho disco, la partición de intercambio aparecerá con el estado «deleted» en /proc/swaps.
Solicitar la sustitución del disco duro
Ahora ya puede solicitar la sustitución del disco duro defectuoso. Para ello, póngase en contacto con Atención al Cliente. Encontrará los datos de contacto en la siguiente página: Atención al Cliente
Pasos necesarios tras la sustitución del disco duro
Tras sustituir el disco duro defectuoso, es necesario que reconstruya el RAID de software. Encontrarás más información sobre cómo reconstruir un RAID de software en el siguiente artículo: reconstruir un RAID de software (Linux)
Contenido
- Comprobar el estado del software RAID
- Interpretación de los resultados
- Diagnóstico de errores en los discos duros
- Interpretación de los parámetros y diagnóstico de errores
- Consultar información detallada sobre la sustitución del disco duro
- Crear un registro SMART
- Preparar el servidor para la sustitución del disco duro
- Solicitar la sustitución del disco duro
- Pasos necesarios tras la sustitución del disco duro
- Arriba