古いハードドライブをテストしていますが、smartctl
ディスクのセルフテスト結果をよく理解していません。
$ sudo smartctl -d sat -x /dev/sdd
...
SMART Extended Self-test Log Version: 1 (1 sectors)
Num Test_Description Status Remaining LifeTime(hours) LBA_of_first_error
# 1 Short offline Completed without error 00% 9691 -
# 2 Extended offline Completed: read failure 90% 9691 7948857160
# 3 Short offline Completed: read failure 90% 9687 7948857160
# 4 Short offline Completed without error 00% 113 -
...
$ sudo smartctl -d sat -a /dev/sdd
...
SMART Self-test log structure revision number 1
Num Test_Description Status Remaining LifeTime(hours) LBA_of_first_error
# 1 Short offline Completed without error 00% 9691 -
# 2 Extended offline Completed: read failure 90% 9691 3653889864
# 3 Short offline Completed: read failure 90% 9687 3653889864
# 4 Short offline Completed without error 00% 113 -
...
smartclt -a
報告業界間の違いは何ですかsmartctl -x
?
答え1
返された数値はsmartctl -a
正しい32ビットLBAに切り捨てられます。smartctl -a
大容量ディスクには使用しないでください。smartctl -a
マンページに従ってSMARTセルフテストログを検索し、smartctl -x
SMARTも検索します。拡大するセルフテストログ。拡張セルフテストにより、より長いログを可能にし、48ビットLBAに対応します。一般的なセルフテストログは、32ビットLBAフィールドのみをサポートします。つまり、smartctl -a
2TiBより大きいドライブには絶対に使用しないでください。
答え2
4TB Western Digital Red(WDC WD40EFRX-68WT0N0)でsmartctl(smartctl 7.2 2020-12-30 r5155 [x86_64-linux-5.10.0-13-amd64])を使用して同じ問題が発生しました。
私のドライブにSMARTモニタリングによって報告された不良ブロックがあります。
smartctl -a /dev/sdc
報告 3424096344
しかし:
smartctl -x /dev/sdc
レポート7719063640(OpenMediaVault SMARTモニタリングで報告された値。)。
バイナリで次の値を確認してください。
7719063640: 0001 1100 1100 0001 0111 1001 0000 0101 1000
3424096344: 1100 1100 0001 0111 1001 0000 0101 1000
上部ニブルを除いて、バイナリが一致していることがわかります。 int32とint64の間の問題かもしれません。
しかし、これがドライバなのかsmartctlツールなのかはわかりません。
もちろん、正しい値は7719063640です。この値と素晴らしいガイドを使用しました。https://www.smartmontools.org/wiki/BadBlockHowto
ブロックを書き換えて、ドライブから報告されたSMARTエラーを消去します。