2015年7月22日水曜日

PT2 サーバのハードディスクの複写

昨日入手した PT2 サーバ用のハードディスク(WD30EZRX-1TBP)ですが、Data Lifeguard Diagnostics の試験を 7 時間ほどで終了しました。そしてすぐに古いハードディスク(ST3000DM001)から新しいハードディスク(WD30EZRX-1TBP)へデータの複写を開始しました。

Data Lifeguard Diagnostics の試験が終了したところです。

ハードディスクの複写開始

ハードディスクの複写には dd コマンドではなく、不良セクタの再読み込み(リトライ)機能のある ddrescue を使用しました。いつも使っている以下のオプション設定で複写を開始しました。なお古いハードディスクは /dev/sda で、新しいハードディスクは /dev/sdb となっています。
ddrescue -d -f -r3 /dev/sda /dev/sdb
-d  : 読み出しハードディスクのキャッシュを無効にする
-f  : 書き込みハードディスクへ強制書き込み
-r3 : 不良セクタでは3回までのリトライを行う
データの複写中の新旧のハードディスクです。

ddrescue のセクタサイズの見直し

以上のコマンドで 4 時間ほど経過した時点で、およそ 470GB を複写していました。データの複写速度は、およそ 33MB/秒 程度でした。3000GB を複写するには、およそ 25 時間必要との見積りとなりました。

複写を中断する前の ddrescue の動作状況です。

ここで ddrescue のオプションで、セクタサイズの変更を行なってみることとしました。以前のハードディスクの標準であった 512 バイト/セクタ でしたが、これを現在使用しているハードディスクの 4096 バイト/セクタ へ変更してみることとしました。

すでに4時間も複写をしていたので、この複写を破棄することとなりますが、複写速度の向上が見込めれば4時間のロスも取り戻せると考えました。

以下の 4096 バイト/セクタのオプション(-b4096)を追加して複写を再スタートさせませました。
ddrescue -d -f -r3 -b4096 /dev/sda /dev/sdb

最初の 200GB ぐらいまでも複写では 66MB/秒 の速度で、512B/セクタで複写していたときの二倍の速度となっていました。なお参考までに、セクタの再読み込みを行なっていないと思われるときの複写速度は両者とも 96MB/秒 程度の速度でした。

12 時間経過した時点で

以上のことから、複写終了までに 13 時間程度で終了するものと考えていました。しかし現実は甘くはありませんでした。さらにハードディスクの読み出し状況が悪化したようで、12時間が経過したところで 950GB しか複写していませんでした。複写速度は、22MB/秒 まで低下していました。このままだと複写時間は 38 時間程度必要となります。ただし読み込みエラーで読み出せなかったセクタは現在のところ存在していませんでした。このままエラーが発生せずに終了するのを祈りながら待つしかありません。

12時間が経過した ddrescue の動作状況です。

0 件のコメント:

コメントを投稿

注: コメントを投稿できるのは、このブログのメンバーだけです。