5 votes

Confirmer que le disque est cassé lorsqu'il passe tous les diagnostics

J'ai un système avec un disque potentiellement cassé, mais le disque passe toutes sortes de diagnostics. Je n'ai pas été en mesure de confirmer que le disque est cassé. Quelles sont mes options ?

Je pourrais simplement remplacer le disque, mais comme cette situation est très similaire à une autre situation plus grave que j'ai (longue histoire), j'aimerais faire un vrai diagnostic plutôt que de choisir le matériel au hasard.

Le problème et l'histoire sont les suivants :

  1. J'avais un PC Linux Debian (500 MHz P3) faisant office de routeur, nagios et munin.
  2. Il tombait en panne toutes les deux semaines. Aucun journal ou dmesg n'a pu être obtenu (car il s'agit d'un vieux Compaq qui ne démarre que lorsqu'il est configuré sans clavier, ce qui rend impossible la connexion d'un clavier ultérieurement, une fois qu'il a démarré).
  3. À l'époque, j'ai simplement remplacé l'ordinateur par un autre Compaq (P4 2,4 GHz) parce que je pensais que le matériel était défectueux. Cependant, il tombait toujours en panne toutes les deux semaines.
  4. la différence est que sur cet ordinateur, je peux toujours me connecter en SSH. Il donne toutes sortes d'erreurs sur hda.

J'aimerais confirmer que le disque est cassé, mais rien ne le confirme :

  1. Le journal des erreurs SMART n'indique aucune erreur. Normalement, lorsqu'un disque commence à faire des siennes, SMART peut passer, mais il enregistre quand même une erreur de lecture dans le journal des erreurs.
  2. Autotest SMART ( smartctl -t long /dev/sda ) se déroule sans erreur.
  3. Le nombre de secteurs réalloués (un paramètre révélateur) a été de 31 tout au long de sa vie, même lorsque le disque était encore utilisé dans mon PC de bureau il y a des années, et il l'est toujours. Ce chiffre n'a jamais changé.
  4. dd if=/dev/sda of=/dev/null bs=4096 passe haut la main.

Que puis-je faire d'autre pour évaluer l'état de santé du disque ?

Encore une fois, il ne s'agit pas de rendre ce routeur entièrement fonctionnel, mais d'une question d'analyse de disque, car il se trouve que j'ai un autre serveur qui a potentiellement le même problème, et le fait de connaître la réponse à cette question pourrait m'aider grandement.

Pour mémoire, vous trouverez ci-dessous les logs et autres.

というものです。 smartctl -a de la production :

smartctl 5.40 2010-07-12 r3124 [i686-pc-linux-gnu] (local build)
Copyright (C) 2002-10 by Bruce Allen, http://smartmontools.sourceforge.net

=== START OF INFORMATION SECTION ===
Model Family:     Seagate Barracuda 7200.7 and 7200.7 Plus family
Device Model:     ST3120026A
Serial Number:    5JT1CLQM
Firmware Version: 3.06
User Capacity:    120,034,123,776 bytes
Device is:        In smartctl database [for details use: -P show]
ATA Version is:   6
ATA Standard is:  ATA/ATAPI-6 T13 1410D revision 2
Local Time is:    Mon Jul  1 21:18:33 2013 CEST
SMART support is: Available - device has SMART capability.
SMART support is: Enabled

=== START OF READ SMART DATA SECTION ===
SMART overall-health self-assessment test result: PASSED

General SMART Values:
Offline data collection status:  (0x82) Offline data collection activity
                    was completed without error.
                    Auto Offline Data Collection: Enabled.
Self-test execution status:      (  24) The self-test routine was aborted by
                    the host.
Total time to complete Offline 
data collection:         ( 430) seconds.
Offline data collection
capabilities:            (0x5b) SMART execute Offline immediate.
                    Auto Offline data collection on/off support.
                    Suspend Offline collection upon new
                    command.
                    Offline surface scan supported.
                    Self-test supported.
                    No Conveyance Self-test supported.
                    Selective Self-test supported.
SMART capabilities:            (0x0003) Saves SMART data before entering
                    power-saving mode.
                    Supports SMART auto save timer.
Error logging capability:        (0x01) Error logging supported.
                    No General Purpose Logging support.
Short self-test routine 
recommended polling time:    (   1) minutes.
Extended self-test routine
recommended polling time:    (  85) minutes.

SMART Attributes Data Structure revision number: 10
Vendor Specific SMART Attributes with Thresholds:
ID# ATTRIBUTE_NAME          FLAG     VALUE WORST THRESH TYPE      UPDATED  WHEN_FAILED RAW_VALUE
  1 Raw_Read_Error_Rate     0x000f   050   046   006    Pre-fail  Always       -       47766662
  3 Spin_Up_Time            0x0003   097   096   000    Pre-fail  Always       -       0
  4 Start_Stop_Count        0x0032   100   100   020    Old_age   Always       -       10
  5 Reallocated_Sector_Ct   0x0033   100   100   036    Pre-fail  Always       -       31
  7 Seek_Error_Rate         0x000f   084   060   030    Pre-fail  Always       -       820305
  9 Power_On_Hours          0x0032   048   048   000    Old_age   Always       -       46373
 10 Spin_Retry_Count        0x0013   100   100   097    Pre-fail  Always       -       0
 12 Power_Cycle_Count       0x0032   100   100   020    Old_age   Always       -       605
194 Temperature_Celsius     0x0022   036   065   000    Old_age   Always       -       36
195 Hardware_ECC_Recovered  0x001a   050   046   000    Old_age   Always       -       47766662
197 Current_Pending_Sector  0x0012   100   100   000    Old_age   Always       -       0
198 Offline_Uncorrectable   0x0010   100   100   000    Old_age   Offline      -       0
199 UDMA_CRC_Error_Count    0x003e   200   196   000    Old_age   Always       -       6
200 Multi_Zone_Error_Rate   0x0000   100   253   000    Old_age   Offline      -       0
202 Data_Address_Mark_Errs  0x0032   100   253   000    Old_age   Always       -       0

SMART Error Log Version: 1
No Errors Logged

SMART Self-test log structure revision number 1
Num  Test_Description    Status                  Remaining  LifeTime(hours)  LBA_of_first_error
# 1  Extended offline    Aborted by host               80%     46361         -
# 2  Extended offline    Completed without error       00%     46358         -
# 3  Short offline       Completed without error       00%     12046         -
# 4  Extended offline    Completed without error       00%     10472         -
# 5  Short offline       Completed without error       00%     10471         -
# 6  Short offline       Completed without error       00%     10471         -
# 7  Short offline       Completed without error       00%      6770         -
# 8  Extended offline    Aborted by host               90%      5958         -
# 9  Extended offline    Aborted by host               90%      5951         -
#10  Short offline       Completed without error       00%      5024         -
#11  Extended offline    Aborted by host               80%      5024         -
#12  Short offline       Completed without error       00%      3697         -
#13  Short offline       Completed without error       00%       237         -
#14  Short offline       Completed without error       00%       145         -
#15  Short offline       Completed without error       00%        69         -
#16  Extended offline    Completed without error       00%        68         -
#17  Short offline       Completed without error       00%        66         -
#18  Short offline       Completed without error       00%        49         -
#19  Short offline       Completed without error       00%        29         -
#20  Short offline       Completed without error       00%        29         -

SMART Selective self-test log data structure revision number 1
 SPAN  MIN_LBA  MAX_LBA  CURRENT_TEST_STATUS
    1        0        0  Not_testing
    2        0        0  Not_testing
    3        0        0  Not_testing
    4        0        0  Not_testing
    5        0        0  Not_testing
Selective self-test flags (0x0):
  After scanning selected spans, do NOT read-scan remainder of disk.
If Selective self-test is pending on power-up, resume after 0 minute delay.

Et voici l'erreur dmesg lorsqu'il s'est planté (qui se répète pour un tas de secteurs différents) :

[1755091.211136] sd 0:0:0:0: [sda] Unhandled error code
[1755091.211144] sd 0:0:0:0: [sda] Result: hostbyte=DID_BAD_TARGET driverbyte=DRIVER_OK
[1755091.211151] sd 0:0:0:0: [sda] CDB: Read(10): 28 00 08 fe ad 38 00 00 08 00
[1755091.211166] end_request: I/O error, dev sda, sector 150908216

4voto

Roman Points 3815

Vous ne pouvez pas le faire de manière fiable.

Ou plutôt, vous l'avez déjà fait avec les options dont vous disposez.

Comme le montre une étude réalisée à Google l'a découvert les disques défaillants n'affichent pas nécessairement des valeurs SMART anormales (l'inverse est toutefois plus fiable : lorsqu'ils le font, c'est parce qu'ils ont des valeurs SMART anormales). volonté échouer).

Si l'on fait abstraction de ce point, il faut garder à l'esprit que même si tout est normalisé en informatique, il existe en réalité des bogues tant dans le matériel que dans les logiciels, des marges d'erreur qui peuvent s'accumuler, etc. Le monde réel n'est pas parfait, et il n'est pas rare que des disques durs ne fassent pas bon ménage avec des contrôleurs particuliers - et inversement. Il s'agit parfois d'un micrologiciel défectueux, parfois de composants du système complètement différents qui ne se comportent pas bien, par exemple un bloc d'alimentation de qualité médiocre qui fait des siennes lors de pics de charge particuliers. Ou même des changements de température, l'âge... la liste pourrait être allongée presque à volonté.

La procédure standard consiste donc à placer le disque dans une configuration système sensiblement différente et à refaire les tests - mais comme vous l'avez déjà fait en changeant complètement votre système, vous avez conclu à juste titre que le disque devait être en cause. ( Sauf si vous n'avez pas changé tout le reste comme vous nous l'avez dit - je pense notamment à Cable/HBA, auquel cas l'hypothèse ne se vérifierait pas).

Edit : Je viens de réaliser qu'il reste une option ; vous pouvez rechercher s'il existe des révisions de micrologiciel plus récentes pour ce lecteur de disque que celles qui sont actuellement sur votre lecteur particulier. Si c'est le cas, vous pouvez consulter le journal des modifications qui signale les problèmes éventuels dans votre cas.

En conclusion, pour établir en toute confiance (dans cette situation particulière !) que le lecteur ne fonctionne pas correctement, vous devez le renvoyer au fabricant.

1voto

Atari911 Points 375

Je pense qu'il s'agit d'un mauvais contrôleur. Vous pouvez faire d'autres choses pour vérifier le disque ainsi que le contrôleur...


Exécutez 'badblocks' sur le lecteur. Cette opération est similaire à l'opération 'dd' que vous avez exécutée. Prenez un autre disque qui a un bon statut SMART et placez-le dans l'ordinateur. Si ce disque a un comportement similaire, vous savez alors que c'est un matériel autre que le disque qui vous pose problème. Dans ce cas, je pense qu'il s'agit du contrôleur. Vous avez mentionné que vous avez changé de système et que vous aviez toujours des problèmes, donc, après tout ce qui a été dit et fait, je pense toujours qu'il doit y avoir un composant commun qui cause l'instabilité du système. Vous pouvez également consulter le site suivant :

  1. câble défectueux (le câble a-t-il été échangé sur la deuxième machine avec le lecteur ?)
  2. mauvaise configuration des systèmes (configurez-vous le système de la même manière avec des hw différents ?)

0voto

Halfgaar Points 7731

SF a soulevé cette question parce qu'elle était "notable", et je n'ai donc pas voulu laisser de côté de nouvelles idées, à savoir diskscan . Il lit le disque et calcule le temps de latence des secteurs, en supposant que les secteurs cassés nécessitent des tentatives.

Voici le résultat d'un disque Seagate que j'avais sous la main et qui a passé tous les tests traditionnels :

enter image description here

Vous pouvez voir qu'il y a quelques régions où la latence est très élevée, ce qui pose manifestement un problème.

Et un autre disque, un western digital :

enter image description here

Il est intéressant de noter qu'après un essuyage avec dd Le statut SMART était à nouveau OK : pas de secteurs en attente ou réalloués. Il s'agissait de la réexécution suivante de diskscan :

enter image description here

Ce disque WDC était donc à nouveau bon, soi-disant. J'ai lancé un smartctl -t long sur le disque, puis il a de nouveau affiché un échec de lecture sur le disque.

Conclusion : diskscan aide, mais bien sûr, rien n'est fiable à 100 %.

SistemesEz.com

SystemesEZ est une communauté de sysadmins où vous pouvez résoudre vos problèmes et vos doutes. Vous pouvez consulter les questions des autres sysadmins, poser vos propres questions ou résoudre celles des autres.

Powered by:

X