Cómo comprobar la salud del SSD/HDD en Linux
Si eres administrador de sistemas y responsable de la gestión de sistemas Linux en Datacenter. Entonces, se recomienda comprobar regularmente la salud de las unidades SSD y HDD. Te ayudará a identificar las unidades averiadas y a sustituirlas antes de que se produzca una pérdida de datos. S.M.A.R.T es una herramienta utilizada para controlar el estado de salud de los SSD y HDD. También te permite realizar pruebas bajo demanda en la unidad.
En este post, te mostraremos cómo comprobar la salud de los SSD y HDD en Linux.
Requisitos previos
- Un servidor o un ordenador de sobremesa con sistema operativo Linux.
- Una contraseña de root configurada en el servidor.
Instalar Smartctl
Por defecto, Smartctl está incluido en el repositorio por defecto de las principales distribuciones de Linux.
Para las distribuciones Debian y Ubuntu, instala Smartctl utilizando el siguiente comando:
apt-get install smartmontools -y
Para las distribuciones RHEL, CentOS y Fedora, instala Smartctl utilizando el siguiente comando:
dnf install smartmontools
Tras instalar Smartctl, inicia el servicio Smartctl utilizando el siguiente comando:
systemctl start smartd
Puedes comprobar el estado del smartd con el siguiente comando:
systemctl status smartd
Deberías obtener la siguiente salida:
? smartmontools.service - Self Monitoring and Reporting Technology (SMART) Daemon Loaded: loaded (/lib/systemd/system/smartmontools.service; enabled; vendor preset: enabled) Active: active (running) since Fri 2021-07-02 08:58:33 UTC; 11s ago Docs: man:smartd(8) man:smartd.conf(5) Main PID: 1042 (smartd) Status: "Next check of 0 devices will start at 09:28:33" Tasks: 1 (limit: 2353) Memory: 1.2M CGroup: /system.slice/smartmontools.service ??1042 /usr/sbin/smartd -n Jul 02 08:58:33 ubuntu2004 smartd[1042]: Device: /dev/sda, opened Jul 02 08:58:33 ubuntu2004 smartd[1042]: Device: /dev/sda, [QEMU QEMU HARDDISK 2.5+], 53.6 GB Jul 02 08:58:33 ubuntu2004 smartd[1042]: Device: /dev/sda, IE (SMART) not enabled, skip device Jul 02 08:58:33 ubuntu2004 smartd[1042]: Try 'smartctl -s on /dev/sda' to turn on SMART features Jul 02 08:58:33 ubuntu2004 smartd[1042]: Device: /dev/sdb, opened Jul 02 08:58:33 ubuntu2004 smartd[1042]: Device: /dev/sdb, [AN Volume 2.5+], S/N: sdb, 53.6 GB Jul 02 08:58:33 ubuntu2004 smartd[1042]: Device: /dev/sdb, IE (SMART) not enabled, skip device Jul 02 08:58:33 ubuntu2004 smartd[1042]: Try 'smartctl -s on /dev/sdb' to turn on SMART features Jul 02 08:58:33 ubuntu2004 smartd[1042]: Monitoring 0 ATA/SATA, 0 SCSI/SAS and 0 NVMe devices Jul 02 08:58:33 ubuntu2004 systemd[1]: Started Self Monitoring and Reporting Technology (SMART) Daemon.
Comprobar estado de SSD/HDD
Después de instalar Smartctl, tendrás que activar las funciones SMART en tu disco duro.
Puedes hacerlo utilizando el siguiente comando:
smartctl -s on /dev/sda
Lo primero que tendrás que hacer es obtener información del SSD o HDD.
Puedes hacerlo utilizando el siguiente comando:
smartctl -i /dev/sda
Esto te dará la información detallada de tu disco duro.
smartctl 6.2 2013-07-26 r3841 [x86_64-linux-4.4.0-148-generic] (local build) Copyright (C) 2002-13, Bruce Allen, Christian Franke, www.smartmontools.org === START OF INFORMATION SECTION === Device Model: WDC WD5000LPVX-75V0TT0 Serial Number: WXV1EC4KN2N7 LU WWN Device Id: 5 0014ee 65af65611 Firmware Version: 01.01A01 User Capacity: 500,107,862,016 bytes [500 GB] Sector Sizes: 512 bytes logical, 4096 bytes physical Rotation Rate: 5400 rpm Device is: Not in smartctl database [for details use: -P showall] ATA Version is: ACS-2 (minor revision not indicated) SATA Version is: SATA 3.0, 6.0 Gb/s (current: 3.0 Gb/s) Local Time is: Fri Jul 2 14:39:33 2021 IST SMART support is: Available - device has SMART capability. SMART support is: Enabled
Si quieres realizar una pequeña prueba en la unidad, ejecuta el siguiente comando:
smartctl -t short -a /dev/sda
Deberías obtener la siguiente salida:
smartctl 6.2 2013-07-26 r3841 [x86_64-linux-4.4.0-148-generic] (local build) Copyright (C) 2002-13, Bruce Allen, Christian Franke, www.smartmontools.org === START OF INFORMATION SECTION === Device Model: WDC WD5000LPVX-75V0TT0 Serial Number: WXV1EC4KN2N7 LU WWN Device Id: 5 0014ee 65af65611 Firmware Version: 01.01A01 User Capacity: 500,107,862,016 bytes [500 GB] Sector Sizes: 512 bytes logical, 4096 bytes physical Rotation Rate: 5400 rpm Device is: Not in smartctl database [for details use: -P showall] ATA Version is: ACS-2 (minor revision not indicated) SATA Version is: SATA 3.0, 6.0 Gb/s (current: 3.0 Gb/s) Local Time is: Fri Jul 2 14:40:23 2021 IST SMART support is: Available - device has SMART capability. SMART support is: Enabled === START OF READ SMART DATA SECTION === SMART overall-health self-assessment test result: PASSED General SMART Values: Offline data collection status: (0x00) Offline data collection activity was never started. Auto Offline Data Collection: Disabled. Self-test execution status: ( 0) The previous self-test routine completed without error or no self-test has ever been run. Total time to complete Offline data collection: ( 9360) seconds. Offline data collection capabilities: (0x7b) SMART execute Offline immediate. Auto Offline data collection on/off support.
La prueba breve comprobará las Propiedades Eléctricas, las Propiedades Mecánicas y la Lectura/Verificación.
Para buscar e imprimir el resultado del autotest, ejecuta el comando siguiente:
smartctl -l selftest /dev/sda
Deberías obtener el siguiente resultado:
smartctl 6.2 2013-07-26 r3841 [x86_64-linux-4.4.0-148-generic] (local build) Copyright (C) 2002-13, Bruce Allen, Christian Franke, www.smartmontools.org === START OF READ SMART DATA SECTION === SMART Self-test log structure revision number 1 Num Test_Description Status Remaining LifeTime(hours) LBA_of_first_error # 1 Short offline Completed without error 00% 7609 - # 2 Short offline Interrupted (host reset) 90% 6972 - # 3 Short offline Aborted by host 70% 6972 - # 4 Short offline Interrupted (host reset) 70% 2 -
Para ejecutar una prueba larga, utiliza el siguiente comando:
smartctl -t long -a /dev/sda
Deberías obtener el siguiente resultado:
SMART Selective self-test log data structure revision number 1 SPAN MIN_LBA MAX_LBA CURRENT_TEST_STATUS 1 0 0 Not_testing 2 0 0 Not_testing 3 0 0 Not_testing 4 0 0 Not_testing 5 0 0 Not_testing Selective self-test flags (0x0): After scanning selected spans, do NOT read-scan remainder of disk. If Selective self-test is pending on power-up, resume after 0 minute delay. === START OF OFFLINE IMMEDIATE AND SELF-TEST SECTION === Sending command: "Execute SMART Extended self-test routine immediately in off-line mode". Drive command "Execute SMART Extended self-test routine immediately in off-line mode" successful. Testing has begun. Please wait 107 minutes for test to complete. Test will complete after Fri Jul 2 16:30:41 2021 Use smartctl -X to abort test.
La prueba larga comprobará todo lo incluido en la prueba corta.
Para detener la prueba, ejecuta el comando siguiente:
smartctl -X /dev/sda
Deberías obtener la siguiente salida:
smartctl 6.2 2013-07-26 r3841 [x86_64-linux-4.4.0-148-generic] (local build) Copyright (C) 2002-13, Bruce Allen, Christian Franke, www.smartmontools.org === START OF OFFLINE IMMEDIATE AND SELF-TEST SECTION === Sending command: "Abort SMART off-line mode self-test routine". Self-testing aborted!
Para comprobar la salud general de la unidad, ejecuta el comando siguiente:
smartctl -d ata -H /dev/sda
Deberías obtener la siguiente salida:
smartctl 6.2 2013-07-26 r3841 [x86_64-linux-4.4.0-148-generic] (local build) Copyright (C) 2002-13, Bruce Allen, Christian Franke, www.smartmontools.org === START OF READ SMART DATA SECTION === SMART overall-health self-assessment test result: PASSED
Para comprobar el tiempo estimado para realizar la prueba, ejecuta el comando siguiente:
smartctl -c /dev/sda
Deberías obtener la salida siguiente:
smartctl 6.2 2013-07-26 r3841 [x86_64-linux-4.4.0-148-generic] (local build) Copyright (C) 2002-13, Bruce Allen, Christian Franke, www.smartmontools.org === START OF READ SMART DATA SECTION === General SMART Values: Offline data collection status: (0x00) Offline data collection activity was never started. Auto Offline Data Collection: Disabled. Self-test execution status: ( 25) The self-test routine was aborted by the host. Total time to complete Offline data collection: ( 9360) seconds. Offline data collection capabilities: (0x7b) SMART execute Offline immediate. Auto Offline data collection on/off support. Suspend Offline collection upon new command. Offline surface scan supported. Self-test supported. Conveyance Self-test supported. Selective Self-test supported. SMART capabilities: (0x0003) Saves SMART data before entering power-saving mode. Supports SMART auto save timer. Error logging capability: (0x01) Error logging supported. General Purpose Logging supported. Short self-test routine recommended polling time: ( 2) minutes. Extended self-test routine recommended polling time: ( 107) minutes. Conveyance self-test routine recommended polling time: ( 5) minutes. SCT capabilities: (0x7035) SCT Status supported. SCT Feature Control supported. SCT Data Table supported.
Para imprimir sólo el registro de errores, ejecuta el comando siguiente:
smartctl -l error /dev/sda
Para obtener información de ayuda, ejecuta el comando siguiente:
smartctl --help
Conclusión
En la guía anterior, has aprendido a instalar y utilizar la herramienta S.M.A.R.T para comprobar el estado de tus unidades SSH y HDD. Espero que te sirva de mucha ayuda. Para más información, lee la página man de smartctl.