web-dev-qa-db-ja.com

ハードドライブが故障していますか?

HDDでテストを実行しようとしましたが、セルフテストを完了したくありません。結果は次のとおりです。

smartctl --attributes --log=selftest /dev/sda
smartctl 6.2 2013-07-26 r3841 [x86_64-linux-3.13.0-32-generic] (local build)

=== START OF READ SMART DATA SECTION ===
SMART Attributes Data Structure revision number: 16
Vendor Specific SMART Attributes with Thresholds:
ID# ATTRIBUTE_NAME          FLAG     VALUE WORST THRESH TYPE      UPDATED  WHEN_FAILED RAW_VALUE
  1 Raw_Read_Error_Rate     0x002f   200   200   051    Pre-fail  Always       -       697
  3 Spin_Up_Time            0x0027   206   160   021    Pre-fail  Always       -       691
  4 Start_Stop_Count        0x0032   074   074   000    Old_age   Always       -       26734
  5 Reallocated_Sector_Ct   0x0033   200   200   140    Pre-fail  Always       -       0
  7 Seek_Error_Rate         0x002e   200   200   000    Old_age   Always       -       28
  9 Power_On_Hours          0x0032   090   090   000    Old_age   Always       -       7432
 10 Spin_Retry_Count        0x0032   100   100   000    Old_age   Always       -       0
 11 Calibration_Retry_Count 0x0032   100   100   000    Old_age   Always       -       0
 12 Power_Cycle_Count       0x0032   097   097   000    Old_age   Always       -       3186
191 G-Sense_Error_Rate      0x0032   001   001   000    Old_age   Always       -       20473
192 Power-Off_Retract_Count 0x0032   200   200   000    Old_age   Always       -       84
193 Load_Cycle_Count        0x0032   051   051   000    Old_age   Always       -       447630
194 Temperature_Celsius     0x0022   113   099   000    Old_age   Always       -       34
196 Reallocated_Event_Count 0x0032   200   200   000    Old_age   Always       -       0
197 Current_Pending_Sector  0x0032   200   200   000    Old_age   Always       -       16
198 Offline_Uncorrectable   0x0030   100   253   000    Old_age   Offline      -       0
199 UDMA_CRC_Error_Count    0x0032   200   200   000    Old_age   Always       -       0
200 Multi_Zone_Error_Rate   0x0008   100   253   000    Old_age   Offline      -       0

SMART Self-test log structure revision number 1
Num  Test_Description    Status                  Remaining  LifeTime(hours)  LBA_of_first_error
# 1  Short offline       Completed: read failure       90%      7432         92290592
# 2  Conveyance offline  Completed: read failure       90%      7432         92290596
# 3  Conveyance offline  Completed: read failure       90%      7432         92290592
# 4  Short offline       Completed: read failure       90%      7431         92290596
# 5  Extended offline    Completed: read failure       90%      7431         92290592

それで、このディスクは故障していますか?

42
Michel

あなたのドライブはセルフテストをするのにとても幸せです。要約すると、過去1時間で5つ以上の成果を上げています。そして、それらのすべては、テストの早い段階で、読み取りエラーで失敗しました。

はい、このハードドライブは故障しています。有名なGoogle Labsのレポートが言っているように(現時点ではリンクに手をつけることはできませんが)、ドライブが故障しているとsmartctlが言った場合、それはおそらく(言い換えれば)です。

編集:保存しないでください。それからすべてのデータを取得し、置き換えます。

43
MadHatter

あなたの質問に答えるために、失敗したSMARTテストは差し迫ったドライブ障害の確かな兆候です。データのバックアップを取り、潜在的なデータ損失を防ぐためにできるだけ早くドライブを交換する必要があります。

@ sj0hは、447,630と非常に高いロードサイクルカウントについて言及しました。 (ほとんどの最新のハードドライブは、600,000回のロード/アンロードサイクルに耐えるように設計されています。)これは通常、数秒後にヘッドをパーキング(プラッターからアンロード)することで電力を節約しようとする高度な電源管理(APM)機能が原因で発生します。アイドル。必要に応じて、ヘッドがプラッターに戻されます。ほとんどのシステムでは、ハードドライブが断続的なオン/オフアクティビティを取得するため、多くのロード/アンロードサイクルが発生する可能性があります。 APMをオフにするには、ルートプロンプトで次のコマンドを実行します。

smartctl -s apm,off /dev/sda

この設定は、ドライブの電源をオフにしても保持されないため、システムの電源を入れ直すか、スリープ状態にするか、ドライブの電源を切るたびに、このコマンドを実行する必要があります。

私の経験では、これを行うと、ロード/アンロードのサイクル数が大幅に減少し、その結果、この種の障害が将来再び発生する可能性が低くなります。ただし、これを行うと、消費電力とドライブの温度が上昇することに注意してください。ドライブが常に50°Cを超える温度で稼働している場合、早期の故障のリスクが高まるため、暖かい季節にはAPMをオンのままにする(またはオフの場合はオンにする)ことをお勧めします。

10
bwDraco

はい、16個のセクターが読み取り不可能です。ドライブのほぼ同じ領域ですべてが失敗したいくつかのテストを実行しようとしました。そのため、高速にバックアップしてください。ただし、データが近くに残っているため、アクセスできないデータがあることに注意してください。セクター92290592、92290596。

他の問題のある領域がある可能性がありますが、それらの16セクターが連続しているか分散しているかはまだわかりません。バックアップ後に再生する場合は、-t select、startlba-endlbaを使用して選択的セルフテストを実行できます。

Current_Pending_Sectorは、ハードディスクファームウェアが読み取りを試みたが、できなかった場合、失敗し、Offline_Uncorrectableとしてマークするまで数回(OSが要求するたびに)試行するか、破損したセクターを別のスペアセクターに置き換えます。 OSはそれに書き込みます(これにより、Reallocated_Sector_Ctが増加します)。

2
Jorge Nerín

読み取りエラーとは別に、ロードサイクルカウントも考慮してください。これは、500,000近くになると、障害の原因、または少なくとも高負荷サイクルの摩耗を示している可能性があります。電源投入時間の1分ごとにロードサイクルがあります。ドライブを交換した後、新しいドライブがこれを実行していないことを確認してください。

2
sj0h

個人的にドライブを交換します。なんらかの理由でまだそれを実行したくないが、しばらくドライブに残っている場合は、誤って新しいファイルの不良領域を使用しないようにする方法が必要です。

私は古いMacにビデオを録画するだけのそのようなドライブを持っていて、ビデオがちょうど良かったので、まだ変更したくないと判断しました。エラーを分離する必要がありました。まず、不良ファイル専用の空のフォルダーを作成し、次にディスク上の既存のファイルをすべて読み取ろうとしたところ、エラーが発生したファイルはすべてbad-files-directoryに移動されました(おそらく重要ではありません)。

次に、一意の名前が付けられた1メガバイトのファイルを多数作成してハードドライブをいっぱいにし(すべての空の領域がこれらの1 MBファイルの1つになったため)、手順を繰り返しました。エラーのあるすべてのファイルはbad-files-directoryに移動され、残ったファイルは良好であり、削除して不良スペースを取り戻すことができました。

ドライブをもう少し長く使用できますが、重要なものには使用しないでください。それはwillより失敗し、それが発生したときに不便になる可能性が最も高くなります。

これはあまり良い兆候ではありません。ディスクの内容がバックアップされていることを確認し、重要な目的でディスクを使用しないでください。

ただし、故障したセクターが再割り当てされ、何年も稼働したままのディスクが見られたため、重要でないものや追加のバックアップなど、しばらくの間それを維持できました。

次に、読み取り不可能なセクターによって破損したファイルを確認し、これらのセクターに書き込んで、ディスクによる再割り当てを強制します(「Current_Pending_Sector」から「Reallocated_Sector_Ct」に移動します)。 Linuxを使用している場合は、 http://smartmontools.sourceforge.net/badblockhowto.html を参照してください。セクターが再割り当てされると、セルフテストは合格するか、読み取り不可能なセクターを報告します。

不良セクターが必要であることが差し迫った障害の兆候であるとは思わないので、私はほとんどの回答に同意しません。 http://blog.mmueh.net/index.php/2010/12/09/luks-meets-badblocks/ が言うように、「すべてのハードドライブはその寿命のある時点で不良セクターを生成し始めます」.

1
a3nm