私は1TBドライブでbadblocks(または「e2fsck -c」)を実行しています。進行状況インジケータが何らかの指示(しゃれが意図されていない)である場合、完了するまでにほぼ永久に時間がかかります。
今は0.01% done, 30:20 elapsed
これは、完了するまでに17週間ほどかかることを意味します。これは、私の本ではかなり過剰に見えます。
そのようなチェックにかかる通常の時間ですか、それともドライブが故障しているためにチェックが永遠よりもわずかに短いだけであるという私の疑惑が正しいのですか?
私は この質問 をここで見つけましたが、それは行われたパスの量に関係しています。
あなたの質問に答えるために、私が提供できる最も近いものは、これについてテストした3TBです。以下は、私が行った3回のテストです。-c
のパラメーター値のみを変更し、時間が非常に長くなったため、最大で10%しか実行していません。それぞれ平均して3回行われました。
badblocks -svn /dev/sdb
1%にするには:1時間
10%に到達するには:8時間40分
badblocks -svn -b 512 -c 32768 /dev/sda
1%にするには:35分
10%に到達するには:4時間10分
badblocks -svn -b 512 -c 65536 /dev/sda
1%を取得するには:16分
10%に到達するには:2時間35分
したがって、はい、-c
パラメータは、ドライブのチェックにかかる時間に非常に大きな影響を与えます。 1 TBハードドライブの場合、3TBと同じタイムフレームを維持すると仮定すると、ここで述べた時間の3分の1になるので、10%にするには-c 65536
1 TB HDDでは約50分です。
Badblocksは4ランを実行します。 1 TB外付けHDでは、通常約70時間かかります。
badblocks -svn -b 512 -c 65536 /dev/sda
のように、一緒に処理されるブロックの量を増やしてみてください。このようにして、1 TBハードディスクドライブを8時間でチェックできます。
WD Red 4TBドライブで不良ブロックを実行しています。それらは4kセクタードライブなので(lsblk -o NAME,PHY-SeC
を使用して確認)、-b 4096
で実行しています。 RAMの〜800Mbの各badblocksインスタンスを指定したかったので、-c 200000
を使用して4096 bytes * 200,000 blocks = 800,000 Kb
を提供しました。それらはそれぞれ約800Mbで始まりましたが、それは忍び寄りましたただし、これらの設定は標準設定よりも大幅に高速化されます。
分56秒で1%実行されましたが、それは4パターンの1%です。また、実行の終わりに近づくほど時間がかかるようです。最初のパターンでディスクを約17時間でチェックしたので、約68時間で4 TBが完了するはずです。
以下のコマンドは破壊的な書き込みを実行します
私が使用しているコマンドは:badblocks -svw -b 4096 -c 200000 /dev/sdc -o bb_sdc.txt
いくつかのパフォーマンスの観察:
このデバイスにあるe2fsck -c -c -v /dev/sda2
を実行しています:
/dev/sda2 77056 976754431 976677376 3.7T Linux filesystem
63.5%の現在のランタイムは53:28:40です。 53.5時間。進捗率は1.186%/時間です。この速度では、完了までにさらに31時間かかり、推定合計実行時間は85時間です。これはUSB 3.0デバイスです。 iotopは、平均読み取り/書き込み速度が約25MB/sであることを示しています。これまでのところ、不良ブロックは検出されていません。
e2fsck
が実行する基本的なコマンドラインは次のとおりです。
sh -c badblocks -b 4096 -X -s -n /dev/sda2 976677375
StackOverflow状態にポストすると、^ C(SIGTERM)で不良ブロックを中断しても安全です。これを行う必要がある場合でも、このテストを停止し、後で再開することのマイナス面は見られません。これはディスクブロックレベルの操作であるためです。スキャンが完了した割合で再開する前に、このファイルシステムをアンマウントする必要があります。
失敗した前日にこれを実行した1 TB 6TB RAID 6のドライブ(破壊的な書き込みモード!):
# badblocks -svw -b 4096 -c 65536 /dev/sdb
メインボードはASRockラックC2550D4I(わかっています…)で、SATA3ポートに8x Samsung SpinPoint M8 HN-M101MBB(わかっています…)が接続されています。ドライブは4K「アドバンスドフォーマット」ドライブであるため、4Kブロックサイズです。
badblocks
が完了するまでに約28時間かかりましたが、エラーはありませんでした。
単一のドライブで最大105 MB /秒(平均hdparm -tT
バッファリングされた読み取りタイミング)、アレイ全体をテストする場合は200〜230 MB /秒。最近は何も優れているわけではありませんが、古いラップトップドライブの山に最適です。
このスレッドが、ディスクで不良ブロックを実行する簡単な方法を見つけるのに役立つのと同じくらい役立つことを願っています。最近、その使用は疑わしいですが、以前のsmartctl -t long
読み取りエラーのために失敗しました。S.M.A.R.T.の値がどのように変化するかを確認するために、すべてのセクターを数回書き換えてみることにしました。別のsmartctl
テストが保留中の場合、それでも失敗するので、新しいドライブを購入します。