Saludos comunidad, por cuestiones de trabajo el equipo del blog ha estado muy ocupado, lo que ha atentado en contra de la publicación de artículos con la frecuencia que tenemos acostumbrados a nuestros lectores. Sin embargo haremos un esfuerzo para mantener siempre a la comunidad informada y regalarle algún que otro truco que siempre será del agrado de muchos. Dicho esto, con esta entrada quiero comenzar una serie prevista de 3 artículos donde trataré un tema que creo; tocará de cerca a muchos y es referente al cuidado de nuestro HDD.

Para nadie es un secreto que el HDD de nuestras computadoras es uno de los dispositivos que más cuidamos, puesto que es nuestra unidad de almacenamiento de toda la información que poseemos.

El universo GNU/Linux nos provee de herramientas que nos permiten conocer el estado de salud del HDD, entre estas podemos encontrar a S.M.A.R.T.

S.M.A.R.T

¿Qué es en realidad S.M.A.R.T?, bien, según Wikipedia:

La tecnología S.M.A.R.T., siglas de Self Monitoring Analysis and Reporting Technology, consiste en la capacidad de detección de fallos del disco duro. La detección con anticipación de los fallos en la superficie permite al usuario el poder realizar una copia de su contenido, o reemplazar el disco, antes de que se produzca una pérdida de datos irrecuperable.

O sea, que hace algunos años atrás sabíamos que un HDD tenía problemas cuando dejaba de funcionar, cuando ya era tarde y perdíamos información, pero hoy en día afortunadamente no necesitamos llegar a tanto, podemos saber cuando el disco empieza a fallar, para entonces hacer salvas de la información.

¿Cómo trabajar con SMART en Linux?

Los que usamos Linux tenemos una herramienta perfecta para la terminal: smartmontools

Para instalarlo en ArchLinux sería:

sudo pacman -S smartmontools

En distros como Debian, Ubuntu o derivados:

sudo apt-get install smartmontools

Una vez instalado debemos verificar si está activado el SMART en el HDD, para esto ejecutamos la siguiente orden:

sudo smartctl -i /dev/sda

Nota: Esto lo revisará para el HDD principal o primero, o sea, /dev/sda. Si tienen otro HDD que también quieran verificar ejecuten el comando otra vez pero con sdb en vez de sda.
El resultado de esta orden debería ser algo como esto:Captura de pantalla de 2015-02-13 13:19:12

Esto significa que está habilitado.

En caso de que NO salga Enabled, o sea, que no esté habilitado, lo pueden habilitar de la siguiente manera:

sudo smartctl -s on -d ata /dev/sda

Sí pero, ¿cómo verificar la salud del HDD con datos de SMART?

Esta herramienta nos brinda la posibilidad de realizar dos tipos de prueba (una corta y otra larga) al HDD, luego nos quedaría revisar el log de errores, así sabremos si tiene errores, cuáles son, y por supuesto, si debemos apurarnos a salvar los datos.

Para hacer una prueba corta (demora 1 a 2 minuto aproximadamente) ejecutamos:

sudo smartctl -t short /dev/sda

Para hacer la prueba larga (esta demorará en dependencia de la capacidad de nuestro HDD) ejecutamos:

sudo smartctl -t long /dev/sda

Es recomendable que entre cada prueba revisemos el log de errores, para ello sería:

sudo smartctl -l error /dev/sda

Si el disco duro está completamente sano les saldrá esto:Captura de pantalla de 2015-02-13 13:30:59

 

¿Cómo se vería si el HDD tiene problemas?

Si el disco duro tiene problemas entonces al ejecutar el comando anterior, la salida sería similar a esto:

smartctl 6.3 2014-07-26 r3976 [x86_64-linux-3.18.5-1-ARCH] (local build)
Copyright (C) 2002-14, Bruce Allen, Christian Franke, www.smartmontools.org
=== START OF READ SMART DATA SECTION ===
SMART overall-health self-assessment test result: PASSED
Please note the following marginal Attributes:
ID# ATTRIBUTE_NAME FLAG VALUE WORST THRESH TYPE UPDATED WHEN_FAILED RAW_VALUE
190 Airflow_Temperature_Cel 0x0022 044 033 045 Old_age Always FAILING_NOW 56 (96 110 58 25)

Para conocer más detalles pueden usar el comando:

sudo smartctl --attributes --log=selftest /dev/sda

Lo cual les mostraría una salida similar a esta, digo similar y no igual porque evidentemente es algo difícil que dos discos duros fallen exactamente igual:

smartctl 6.3 2014-07-26 r3976 [x86_64-linux-3.18.5-1-ARCH] (local build)
Copyright (C) 2002-14, Bruce Allen, Christian Franke, www.smartmontools.org
=== START OF READ SMART DATA SECTION ===
SMART Attributes Data Structure revision number: 10
Vendor Specific SMART Attributes with Thresholds:
ID# ATTRIBUTE_NAME          FLAG     VALUE WORST THRESH TYPE      UPDATED  WHEN_FAILED RAW_VALUE
1 Raw_Read_Error_Rate     0x000f   098   092   006    Pre-fail  Always       -       238320363
3 Spin_Up_Time            0x0003   100   100   000    Pre-fail  Always       -       0
4 Start_Stop_Count        0x0032   100   100   020    Old_age   Always       -       587
5 Reallocated_Sector_Ct   0x0033   100   100   036    Pre-fail  Always       -       9
7 Seek_Error_Rate         0x000f   077   060   030    Pre-fail  Always       -       51672328
9 Power_On_Hours          0x0032   095   095   000    Old_age   Always       -       4805
10 Spin_Retry_Count        0x0013   100   100   097    Pre-fail  Always       -       0
12 Power_Cycle_Count       0x0032   100   100   020    Old_age   Always       -       586
184 Unknown_Attribute       0x0032   100   100   099    Old_age   Always       -       0
187 Reported_Uncorrect      0x0032   001   001   000    Old_age   Always       -       417
188 Unknown_Attribute       0x0032   100   099   000    Old_age   Always       -       4295032833
189 High_Fly_Writes         0x003a   094   094   000    Old_age   Always       -       6
190 Airflow_Temperature_Cel 0x0022   044   033   045    Old_age   Always   FAILING_NOW 56 (96 122 58 25)
194 Temperature_Celsius     0x0022   056   067   000    Old_age   Always       -       56 (0 23 0 0)
195 Hardware_ECC_Recovered  0x001a   043   026   000    Old_age   Always       -       238320363
197 Current_Pending_Sector  0x0012   100   100   000    Old_age   Always       -       49
198 Offline_Uncorrectable   0x0010   100   100   000    Old_age   Offline      -       49
199 UDMA_CRC_Error_Count    0x003e   200   200   000    Old_age   Always       -       0
240 Head_Flying_Hours       0x0000   100   253   000    Old_age   Offline      -       172082159686339
241 Unknown_Attribute       0x0000   100   253   000    Old_age   Offline      -       2155546016
242 Unknown_Attribute       0x0000   100   253   000    Old_age   Offline      -       3048586928
SMART Self-test log structure revision number 1
Num  Test_Description    Status                  Remaining  LifeTime(hours)  LBA_of_first_error
# 1  Extended offline    Completed: read failure       90%      4789         1746972641

Si desean conocer aún mucha más información, el comando para que les muestre una salida completa, casi que un debug detallado es:

sudo smartctl -d ata -a /dev/sda

Bueno y hasta aquí esta primera entrega, espero que les sirva de ayuda y comenten 🙂

 

Fuente: DesdeLinux