Comment puis-je réduire le temps d'attente IO et les temps de nouvelle tentative afin que le système d'exploitation n'essaie pas continuellement d'écrire sur un lecteur défaillant?
J'ai un système que j'utilise pour faire des copies du contenu de démonstration qui est prêté aux clients sur des disques durs de bureau SATA ordinaires. Nous connectons plusieurs disques à la fois via SAS et copions leur contenu à l'aide d'un script.
Parce que les disques sont prêtés, certains reviennent parfois endommagés, mais je ne sais pas s'ils sont endommagés, donc la prochaine fois que ce disque sera réutilisé dans une opération de copie, il ralentit les autres disques lorsque le système réessaye les E / S sur ce disque. Parfois, cela peut prendre des heures avant de remarquer le mauvais disque et de le retirer. Une fois le lecteur retiré, les autres lecteurs commencent à écrire à vitesse normale.
Je me fiche de récupérer les mauvais disques. J'ai juste besoin de les éliminer pour qu'ils ne ralentissent pas tout le reste.
Je fais également des recherches sur les badblocks et les smartmontools et j'envisage d'écrire une pré-vérification sur les disques avant de commencer à écrire.
Système d'exploitation: Ubuntu Linux (12.04 lts)
ddrescue
qu'il ne touche même pas les secteurs signalés par SMART.)
udisks
/smartmonctl
? Un problème XY classique ici, il me semble.