jueves, junio 19, 2008

mi hd muere; pequeño truco para locale

Hoy en la mañana mi notebook no partió como debía, el motivo era el acuse de S.M.A.R.T. acerca del fallo inminente de mi disco duro.

me pregunté ¿que rayos pasa?, así que procedí a averiguar cual era el motivo de la falla. Tras un breve uso de google, di con la utilidad smartctl, la cual era parte del paquete smartmontools en archlinux. Luego de instalarlo ejecuté el comando

# smartctl -H /dev/sda
smartctl version 5.37 [i686-pc-linux-gnu] Copyright (C) 2002-6 Bruce Allen
Home page is http://smartmontools.sourceforge.net/

=== START OF READ SMART DATA SECTION ===
SMART overall-health self-assessment test result: FAILED!
Drive failure expected in less than 24 hours. SAVE ALL DATA.
Failed Attributes:
ID# ATTRIBUTE_NAME FLAG VALUE WORST THRESH TYPE UPDATED WHEN_FAILED RAW_VALUE
5 Reallocated_Sector_Ct 0x0033 132 132 140 Pre-fail Always FAILING_NOW 538

Wow, ¿como puede diagnosticar un error fatal en menos de 24 horas? según leí Reallocated_Sector_Ct son los sectores remapeados debido a fallas, según entiendo los discos duros traen algunos sectores de reserva para dicho fin. Leía por ahí que un valor aceptable es un sector por mes de uso, sin embargo yo tengo 132! eso es claramente una sentencia de muerte., y por algo smart te avisa encarecidamente salvar tus cosas ahora ya!

Luego de entender el mensaje, obviamente respaldé la información mas vital para mi: mis material de la universidad, cosas personales, y , por suerte tenía casi 50G no particionados en un equipo de la casa. Ahora debo cambiar el disco duro, cuidando de no comprar nuevamente wd. Increíble que cada disco duro que me ha fallado en la vida lleva ese nombre. Anteriormente pudo ser por el tiempo, pero éste no alcanza a tener 1 año de uso.

Bueno, para que sea útil éste post, luego del respaldo, decidí eliminar mi partición de ubuntu, motivo por el que usé cfdisk. Dejo un pequeño tip para evitar las molestias que posee el locale de éste programa.

Mini tip
Esto no es precisamente un truco, pero es típico que cuando intentamos usar cfdisk en español, no podamos escribir sí con acento, y tengamos que recurrir a otras formas. Como era de esperarse, ésto ocurre sólo con el locale en español.

Para evitarlo, basta ejecutar la aplicación en inglés, cambiando el locale. Para basta ejecutar el siguiente comando:

export LANG=""; cfdisk /dev/sda

voilá, en lugar de sí, pedirá yes, absolutamente tecleable.



P.D: Si alguien conoce de ésta infomación, y puede interpretarla, dejo la salida completa:

# smartctl -a /dev/hda
smartctl version 5.37 [i686-pc-linux-gnu] Copyright (C) 2002-6 Bruce Allen
Home page is http://smartmontools.sourceforge.net/

Smartctl open device: /dev/hda failed: No such file or directory
[root@jpmovil ~]# smartctl -a /dev/sda
smartctl version 5.37 [i686-pc-linux-gnu] Copyright (C) 2002-6 Bruce Allen
Home page is http://smartmontools.sourceforge.net/

=== START OF INFORMATION SECTION ===
Model Family: Western Digital Scorpio family
Device Model: WDC WD1200BEVS-00LAT0
Serial Number: WD-WXE207C29
Firmware Version: 01.06M01
User Capacity: 120,034,123,776 bytes
Device is: In smartctl database [for details use: -P show]
ATA Version is: 7
ATA Standard is: Exact ATA specification draft version not indicated
Local Time is: Thu Jun 19 12:16:31 2008 CLT
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: FAILED!
Drive failure expected in less than 24 hours. SAVE ALL DATA.
See vendor-specific Attribute list for failed Attributes.

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: (6360) 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: ( 82) minutes.
Conveyance self-test routine
recommended polling time: ( 6) minutes.

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 0x000f 200 200 051 Pre-fail Always - 0
3 Spin_Up_Time 0x0003 188 187 021 Pre-fail Always - 1583
4 Start_Stop_Count 0x0032 100 100 000 Old_age Always - 766
5 Reallocated_Sector_Ct 0x0033 132 132 140 Pre-fail Always FAILING_NOW 538
7 Seek_Error_Rate 0x000f 100 253 051 Pre-fail Always - 0
9 Power_On_Hours 0x0032 099 099 000 Old_age Always - 957
10 Spin_Retry_Count 0x0012 100 100 051 Old_age Always - 0
11 Calibration_Retry_Count 0x0012 100 100 051 Old_age Always - 0
12 Power_Cycle_Count 0x0032 100 100 000 Old_age Always - 763
192 Power-Off_Retract_Count 0x0032 200 200 000 Old_age Always - 742
193 Load_Cycle_Count 0x0032 196 196 000 Old_age Always - 14174
194 Temperature_Celsius 0x0022 115 102 000 Old_age Always - 32
196 Reallocated_Event_Count 0x0032 172 172 000 Old_age Always - 28
197 Current_Pending_Sector 0x0012 200 200 000 Old_age Always - 0
198 Offline_Uncorrectable 0x0010 100 253 000 Old_age Offline - 0
199 UDMA_CRC_Error_Count 0x003e 200 200 000 Old_age Always - 0
200 Multi_Zone_Error_Rate 0x0009 100 253 051 Pre-fail Offline - 0

SMART Error Log Version: 1
No Errors Logged

SMART Self-test log structure revision number 1
No self-tests have been logged. [To run self-tests, use: smartctl -t]


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.

1 comentario:

  1. A veces pasan cosas de este tipo hasta en por ejemplo en procesadores, que debido a su naturaleza no mecánica, es muchísimo más difícil. Yo he llegado a tener un procesador que cuando se utilizaba memoria en canal dual no arrancaba por suerte estaba en garantía y fue sustituirlo.

    En cuestión a discos duros por suerte todos los que me han fallado ha sido ya por cuestión de tiempo de vida, de mbs hasta 1gb muy muy viejos. Solo un caso de falla me ha dado un disco duro que escribía mal y no era muy viejo, después de examinarlo resultó que lo que estaba mal era el cable ide, no se como se pudo llegar a cascar, y menos aún que era esporádicamente cuando fallaba y dejaba trabajar con el disco.

    Con esto te quiero decir que no te deshagas de ese disco duro hasta que sepas que cambiándolo el nuevo funciona correctamente.

    Y si eres de los que la privacidad llega a ser casi una obsesión, mejor que coger un martillo y punzón y darle leña al hd (he visto discos así tirados en puntos de recogida de basuras xD) mejor usa un programa que ponga 0 todo el disco. No recuerdo nombres así que puedes usar también otra opción, hacer una partición entera del disco y formatearla.

    ResponderBorrar

Su comentario es bienvenido y agradecido