web-dev-qa-db-fra.com

Comment comptez-vous SMART Selftestes liés aux badblocs?

L'outil SmartCTL permet d'initier un long auto-test (smartctl -t long /dev/sda). Cependant, il y a aussi badblocks que je peux exécuter sur un lecteur. Comment sont les deux liés? Si BadBlocks détecte les blocs mauvais, le lecteur met-il à jour automatiquement ses valeurs SMART (par exemple en mettant à jour le nombre de secteurs relocalisés)? Les badblocs peuvent remplacer smartctl -t long, ou vice versa?

15
Hongli Lai

Je dois être en désaccord avec vorétaq7 - SMART n'est pas magique. Lorsque vous avez un lecteur et qu'un de ses secteurs est mauvais, vous ne pourrez pas lire des données. de là plus. Il est donc parfaitement possible d'avoir un fichier illisible sur un lecteur de disque moderne. SMART marquerait ce secteur illisible comme "en attente actuelle" et "hors ligne non corrigible" quand il serait d'abord accédé après échec.

Mais lorsque ce secteur serait écrit à nouveau, il serait remodelé à la remappage de l'espace, non marqué et un compteur "realLocated_Sector_CT" augmenterait. Ensuite, tout un lecteur serait lisible à nouveau.

smartctl -t long Test est utile - il testera l'espace de conduite entier pour des secteurs et un journal illisibles et marquera en tant que "en attente actuelle" et "hors ligne non corrigible" le premier mauvais secteur rencontré lorsqu'il est exécuté. Je configure mes serveurs pour exécuter ce long test une fois par semaine sur chaque lecteur. Cela n'affecte pas trop les fonctions d'entraînement normales, car les demandes de système d'exploitation ont toujours une priorité sur SMART scanns.

Comme sur un serveur, j'ai toujours exécuté des disques dans RAID1 Mirrors, alors quand un test long trouve un mauvais secteur, je peux réécrire son contenu à l'aide de données d'un autre lecteur dans un miroir, forçant la réaffectation.

badblocks est également utile parfois - par exemple, il testera tout le lecteur et ne vous arrêtera pas à une première erreur. Il peut tester une seule partition ou une autre partie d'un lecteur. Vous pouvez l'utiliser pour vérifier rapidement si un mauvais bloc a été réaffecté avec succès.

5
Tometzky

Comme je l'ai signalé dans mon autre réponse , chaque disque dur moderne contient un espace de remappage disponible (notamment aux densités de disque d'actualité, aucun plateau d'entraînement ne sera parfait - il y aura toujours quelques défauts que le lecteur a Pour remapper, même sur des lecteurs neufs à la main-de-mains-mon assemblées-mères).

De ce fait, théoriquement, vous devriez avoir un SMART Échec signalé avant quelque chose comme badblocks Avis (utilisateur final-visible) sur un lecteur.
[.____] sur des disques durs modernes, tout secteurs défectueux des utilisateurs finaux (comme cela pourrait être signalé par badblocks ou automatiquement détecté par le système d'exploitation) est un gasp et un frisson final d'un disque mort.


En fin de compte SMART et badblocks test deux différents, mais associés, choses:

Smart est un outil d'auto-surveillance:

Le disque dur connaît des informations sur ses paramètres de fonctionnement et a une certaine méta-connaissances sur ce qui est "normal" pour certains et "acceptables" pour les autres.
[.____] Si le lecteur détecte que certains paramètres sont "anormaux" ou "inacceptables", il signalera une condition de pré-échec - autrement dit que le lecteur est toujours fonctionnel, mais pourrait échouer bientôt.

Par exemple: le moteur de la broche dessine normalement 0,10 ampères, mais il contient maintenant 0,50 ampères - un tirage anormalement élevé pouvant indiquer que l'arbre est liant ou que le lubrifiant permanent sur les roulements est parti. Finalement, le moteur sera incapable de surmonter la résistance et le lecteur s'emparera.

Un autre exemple: le lecteur contient 1000 blocs de "remap" pour faire face aux secteurs défectueux. Il a utilisé 750 d'entre eux et les ingénieurs qui ont construit le lecteur déterminé à déterminer que le nombre de remaps indique quelque chose de mal à l'intérieur de la manquement (mauvais plateau, une défaillance de vieillesse, une tête endommagée) - le lecteur signalera une condition de pré-échec, ce qui vous permettra d'obtenir le temps d'obtenir Vos données offertes avant que l'espace REMAP ne s'épuise et que les secteurs défectueux deviennent visibles.

Smart cherche plus que de mauvais secteurs - c'est une évaluation plus complète de la santé du lecteur. Vous pourriez avoir un SMART Avertissements de pré-échec sur un lecteur sans secteurs défectueux et aucune erreur de lecture/écriture (par exemple, le problème du moteur de la broche que j'ai décrit ci-dessus).


badblocks est un outil avec un objectif spécifique (obsolète): trouver des secteurs mauvais.

badblocks vient d'une heure avant SMART et de remappage du mauvais secteur. Retour à l'avant, nous savions que les entraînements avaient des imperfections, mais le seul moyen de les cartographier pour empêcher de stocker accidentellement des données qu'il y avait Pour tester le disque, faites-tester une défaillance, puis rappelez-vous de ne plus mettre de nouvelles données.

La raison pour laquelle je dis qu'il est obsolète est que l'électronique sur les entraînements modernes fait déjà ce que badblocks fait, en interne et quelques milliers de fois plus rapide. badblocks permet essentiellement des anciens entraînements qui manquent d'électronique sophistiquée pour reconstituer les secteurs (ou sauter) qui ont échoué, mais les disques durs modernes détectent déjà les secteurs de l'échec et les remappent pour vous.

Théoriquement, vous pouvez utiliser des données badblocks pour afficher les défaillances du système d'exploitation (visible) comme si votre disque moderne était un ancien disque Winchester, mais qui est finalement contre-producteur - comme je l'ai dit précédemment [~ # ~]] [~ # ~] Les secteurs méchants détectés avec badblocks sur un lecteur moderne sont une cause pour supprimer tout conduire comme défectueux (ou sur le point d'échouer).

Les secteurs défectueux des mauvais secteurs indiquent que le lecteur est sorti de l'espace de remappage, qui est relativement rare pour les disques modernes à moins d'être vieux (à proximité de la fin de la vie fonctionnelle) ou défectueux (de mauvais plateaux/têtes de l'usine).


Donc, fondamentalement, si vous utilisez badblocks sur un disque avant de le déployer dans la production, vous vous sentirez mieux aller de l'avant et faites-le, mais si votre disque était fabriqué au cours de ce siècle et qu'il montre un mauvais secteur visible que vous devriez le faire. la corbeille (ou appelez sa garantie). Pour mon argent SMART Statut et défense en profondeur est une meilleure utilisation de mon temps que de vérifier manuellement les disques.

11
voretaq7

Bonnes réponses à cette question sont

https://superuser.com/a/693065

https://superuser.com/a/693064

Contrairement à d'autres réponses, je trouve des badblocs non obsolètes, mais un outil très utile. Une fois que j'ai mis à niveau mon PC avec un nouveau disque dur et j'ai commencé à fonctionner instable. Cela m'a pris assez de temps pour réaliser grâce aux badblocs que la surface du disque avait des défauts. Depuis lors, je cours en mode écriture complet (destructible!) Badblocks pour chaque nouveau disque dur que je commence à utiliser et que je n'ai jamais eu ce problème à nouveau. Je recommande fortement un

time sudo Badblocks -Swvo sdx.log/SV/SDX

pour chaque nouveau disque dur. Il testera chaque un peu du disque plusieurs fois pour écrire et lirea et peut donc éviter beaucoup de problèmes plus tard.

Pendant ce test, les mauvais blocs seront cartographiés par le lecteur. Donc, le "décompte du secteur réalocalisé" doit être noté avant et après le test et comparé au SMART Seuil car il en dira quelque chose sur la santé du lecteur.

5
Frank Breitling

badblocks est une relique de l'ancien temps et n'est pas strictement utile, il peut trouver un secteur actuellement illisible, mais la bonne chose à voir avec un mauvais secteur est de récupérer les données de la sauvegarde. Que peut-on faire si les données n'auraient pas été critiques pour que vous puissiez supprimer le fichier associé et écrire quoi que ce soit à cet endroit, cela laissera le disque réaffecter le secteur s'il pense qu'il doit continuer à fonctionner.

L'auto-test du disque ira également et testera l'ensemble du support pour divers défauts, il est censé utiliser des seuils plus bas par rapport à ce qu'il utilise en fonctionnement normal pour voir si le disque a de nombreux points faibles et basé sur la logique du vendeur peut décider que Le disque est passé sa vie utile et déclarer le test a échoué. À ce stade, vous devriez prendre toutes vos données ou récupérer de la sauvegarde et remplacer le disque.

Si une action de disque (par badblocs ou un fonctionnement normal) frappe une erreur de lecture irrécupérable, le disque mettra automatiquement à jour son compteur en attente de réaffectation et lorsque la réaffectation est effectuée, il mettra à jour la réaffectation en attente et les comptoirs réaffectés. Un simple DD obtiendra cela aussi.

Si vous devez choisir entre les deux, utilisez SmartCTL -T long, car il aurait une meilleure analyse du disque.

Je peux également suggérer l'utilisation de mon utilitaire de disquesScan https://github.com/baruch/diskscan , cela fonctionne plus comme des badblocs, mais essaie d'évaluer s'il y a des secteurs qui vont mal, en quelque sorte comme un Secteur d'audition difficile qui prend beaucoup plus de temps à lire. Cela indique un problème de développement de médias et dans les futures versions peut également offrir une tentative automatique d'aider le disque à résoudre ce problème.

2
Baruch Even