Como posso reduzir o tempo de espera de E / S e os tempos de nova tentativa para que o sistema operacional não tente gravar continuamente em uma unidade com falha?
Eu tenho um sistema que eu uso para fazer cópias de conteúdo demo que são emprestadas aos clientes em discos rígidos de desktop SATA comuns. Conectamos várias unidades ao mesmo tempo via SAS e copiamos o conteúdo para elas usando um script.
Como as unidades são emprestadas, ocasionalmente algumas voltam danificadas, mas eu não sei se elas estão danificadas; portanto, na próxima vez em que a unidade for reutilizada em uma operação de cópia, ela desacelera outras unidades à medida que o sistema tenta E / S novamente nessa unidade. Às vezes, pode levar horas até eu notar a unidade defeituosa e removê-la. Depois que a unidade é removida, o restante começa a gravar na velocidade normal.
Eu não ligo para recuperar as unidades defeituosas. Eu só preciso eliminá-los para que eles não diminuam o ritmo.
Também estou pesquisando badblocks e smartmontools e considerando a possibilidade de escrever uma pré-verificação nas unidades antes de começar a escrever.
Sistema operacional: Ubuntu Linux (12.04 lts)
ddrescue
que ele nem toque nos setores informados pela SMART.)
udisks
/smartmonctl
? Um problema XY clássico aqui, acho.