Buffer I/O error on device sdb

Habitualmente “I/O error” es algo que suena bastante mal en informática, el significado es Input/Output error, o error de Entrada/Salida.  En el caso de un disco duro suele ser un error de hardware, bien la controladora de disco o el disco físicamente, ya sea porque tiene sectores defectuosos o porque el disco quedó dañado definitivamente.  Para comprobarlo, lo mejor es utilizar las utilidades del fabricante del disco, ya que acceden a bajo nivel y son capaces de comprobar todos los sectores y marcarlos como defectuosos en caso de que estén dañados, independientemente del sistema de ficheros que tenga el disco (filesystem).

En Linux hay utilidades para comprobar el disco como fsck, pero a veces el proceso se complica dependiendo del filesystem utilizado o si el disco forma parte de un raid, por lo que la utilidad del fabricante suele ahorrarnos andar dando vueltas. Sobre el formateo a bajo nivel, hoy día ha quedado en desuso, ya que los discos modernos no necesitan ser formateados de esta forma.

Para Seagate/Maxtor podemos descargar SeaTools desde aquí, quemar la ISO en un CD y arrancar desde CD (o disquete).  Si el test no pasa (FAILED), conviene despinchar el disco físicamente de la placa y volver a pincharlo antes de darlo por muerto, intentando de nuevo pasar el test.  Un segundo test FAILED nos indicará que ha llegado el momento de reemplazar el disco.  Si por contra el test pasa con errores, no desanimarse porque son muchos los discos que pueden seguir funcionando tras el marcado de los sectores defectuosos. También es cierto que un disco que comienza a tener sectores defectuosos, tiene muchas probabilidades de seguir dando más, por lo que conviene no utilizarlo para almacenar datos sensibles, o al menos utilizarlo como parte de un RAID que evite la pérdida de datos en caso de que vuelva a fallar.

En el último ejemplo, el disco era parte de un sistema raid por software en Linux, que quedaba constantemente intentando reconstruirlo, los errores que mostraba al arrancar eran:

{ DRDY ERR } { UNC } Buffer I/O error on device sdb, logical block 11

por lo que ha habido que desmontarlo del raid:

$ sudo mdadm --manage /dev/md0 --fail /dev/sdb1
$ sudo mdadm --manage /dev/md0 --remove /dev/sdb1

Reiniciamos para arrancar con FreeDOS, el operativo del CD de Seagate, pasamos el test de Seagate (PASSED WITH ERRORS) y volvemos a montarlo tras reiniciar:

$ sudo mdadm --manage /dev/md0 --add /dev/sdb1

Vemos el proceso de reconstrucción del raid:

$ watch cat /proc/mdstat

Personalities : [linear] [multipath] [raid0] [raid1] [raid6] [raid5] [raid4] [raid10]
md0 : active raid1 sdb1[2] sdc1[1]
488383936 blocks [2/1] [_U]
[========>............] recovery = 42.7% (208563136/488383936) finish=55.2min speed=84433K/sec

unused devices:

Si nuestro error es FAILED, debemos ir a la tienda a comprar un disco para sustituirlo. En este caso no es necesario implorar a los dioses o mencionar nuestra infinita mala suerte: los discos duros fallan y a menudo hay que reemplazarlos. Un sistema de ficheros importante siempre debe estar en RAID y aún así, siempre debemos hacer copias de seguridad del RAID en otro soporte externo.

Anuncios

3 Responses to “Buffer I/O error on device sdb”


  1. 1 salvate 9 Sep 2011 en 22:52

    Muy cierto. Tener respaldada la informacion es la unica opcion que nos da seguridad para nuestros datos.

    De todas formas, menciono que si a alguien se le rompe fisicamente un disco (fallas en platos, cabezales, motor, electronica, etc.) tiene un lugar a donde pedir ayuda. Esos lugares son los laboratorios de recuperacion.

    Hay que saber que no son servicios economicos pero si lo compararamos a lo que es el campo de la medicina, podriamos decir que un laboratorio seria como el CTI. La ultima opcion disponible para recuperar la informacion.

    ALgunos ejemplos de este tipo de empresas: Onretrieval en España y tambien Onrescue.

    Saludos.

  2. 2 asdx 27 May 2012 en 7:07

    Para comprobar sectores defectuosos en Linux el smartmontools o badblocks son bastante buenos.

  3. 3 asdx 27 May 2012 en 7:09

    Recomiendo tambien el smartmontools (smartctl) o el badblocks. Saludos.


Responder

Introduce tus datos o haz clic en un icono para iniciar sesión:

Logo de WordPress.com

Estás comentando usando tu cuenta de WordPress.com. Cerrar sesión / Cambiar )

Imagen de Twitter

Estás comentando usando tu cuenta de Twitter. Cerrar sesión / Cambiar )

Foto de Facebook

Estás comentando usando tu cuenta de Facebook. Cerrar sesión / Cambiar )

Google+ photo

Estás comentando usando tu cuenta de Google+. Cerrar sesión / Cambiar )

Conectando a %s




Add to Technorati Favorites
Creative Commons License
Esta obra está bajo una licencia de Creative Commons

Archivos

Wikio – Top Blogs – Linux

Introduce tu dirección de email para suscribirte al blog y recibir notificaciones de nuevos posts en tu email.

Únete a otros 393 seguidores


A %d blogueros les gusta esto: