¿Cómo puedo reducir el tiempo de espera IO y los tiempos de reintento para que el sistema operativo no intente escribir continuamente en una unidad que falla?
Tengo un sistema que utilizo para hacer copias de contenido de demostración que se presta a los clientes en discos duros de escritorio SATA normales. Conectamos muchas unidades a la vez a través de SAS y copiamos contenido a ellas mediante un script.
Debido a que las unidades se prestan, ocasionalmente algunas vuelven dañadas pero no sé si están dañadas, por lo que la próxima vez que la unidad se reutilice en una operación de copia, ralentiza otras unidades a medida que el sistema reintenta IO a esa unidad. A veces pueden pasar horas antes de que note el disco defectuoso y lo elimine. Después de retirar la unidad, el resto de las unidades comienzan a escribir a velocidad normal.
No me importa recuperar los discos duros. Solo necesito eliminarlos para que no ralenticen todo lo demás.
También estoy investigando badblocks y smartmontools y estoy considerando escribir una verificación previa en las unidades antes de comenzar a escribir.
SO: Ubuntu Linux (12.04 lts)
ddrescue
que ni siquiera toque los sectores informados por SMART.)
udisks
/smartmonctl
? Un problema clásico de XY aquí, creo.