|
GNU ddrescue(グヌー ディーディーレスキュー)は、主に不良セクタのあるハードディスクドライブ (HDD) からのデータの救出に使われる、UNIX上で動作するフリーソフトである。Mac OS Xでも動作する。開発者はAntonio Diaz(アントニオ・ディアス)。 ディスクの最初のセクタから順次コピーしていき、不良セクタに当たるとその箇所を飛ばして、最後に飛ばした箇所をまとめて読み出すため、不良セクタの再三の読み込みでディスクを傷める可能性が低く、また正常セクタを優先的に回収するために早期に多くのデータが回収できるという特徴がある。 回収ログはファイルに残るため、途中で中断しても前の場所から再開できる。ファイル情報を基にせずにセクタ単位でコピーするため、ファイルシステムに損傷が発生している場合などにも対応できる。また、回収元と保存先は(不良セクタ以外)まったく同一になるため、回収元を削除ファイル復元ソフトで検索して取り出せる削除済みファイルは、保存先でも同じ方法で取り出せる。そのため、回収元のハードディスクを動作させることが困難な場合、このコマンドはデータ回収のための選択肢の一つとなる。 保存先HDDは、回収元HDDの1.5倍の容量があると高速に処理できるが、同じサイズのものでも実行は可能である。 == 他のコマンドとソフト == UNIXの標準的なデータのコピーのコマンドは、ddである。しかしddは不良セクタのある媒体からの読み出しが苦手である。さまざまなオプションを付けることにより改善されるが、もともと正常媒体を想定しているため、不良セクタが多いとデータの回収が困難である。 不良セクタの多いディスクを扱うためのGNU ddrescueと同じような目的を持つオープンソースソフトウエアとして、dd_rescue 、dd_rhelp 、savehd7 、FreeBSD 標準コマンドの recoverdisk などがある。ddrescueの開発者であるAntonio Diaz Diazは、これらのプログラムを比較した文章を公開している〔http://blue-gnu.biz/content/interview_gnu_ddrescue_039_s_antonio_diaz_diaz〕。その文章によれば「ddはディスクを先頭セクタより直線的に処理するため、処理時間が長いだけでなく途中でエラーに出くわすとそこで処理中断してしまうこともある。dd_rescueはddとほぼ同じような処理を、少しだけ効率的に行うことが出来る。dd_rhelpはスクリプト中でdd_rescueを何度もコールすることで、より複雑なコピーを行うことが出来る。」となっている。 *dd_rhelpは読み込み可能なデータを一旦ファイルに書き込み、読み込み不可能な場合ゼロを書き込んでいる。そして再び読み込み不可能なセクタの読み込みを試み、読み込めた場合はファイルを更新する。 *これに対し、GNU ddrscueは必要であれば直接ディスクに結果を書き込むことが出来る。これはddと同じ仕様である。 dd_rhelpとGNU ddrescueはどちらもディスク全体のコピーを可能な限り短時間で行うソフトウエアである。GNU ddrescueはC++のみで記述されているため、dd_rescueをコールするシェルスクリプトを用いているdd_rhelpより、外部プログラムコールのオーバーラップが少ないため若干処理時間が短くなるはずである。また、どちらのソフトウエアも、ディスク上にエラーを検出した場合、処理ブロックのサイズを徐々に小さくしてゆくことで、最終的に読み込めないデータのサイズを最小化する手法は同じである。 UNIXやLinuxをインストールしたコンピュータが無い場合でも、KnoppixなどのCDブートのLinuxを用いれば、Linuxをハードディスク上にインストールすることなくddrescueや同目的のソフトウエアを用いることが出来る。 抄文引用元・出典: フリー百科事典『 ウィキペディア(Wikipedia)』 ■ウィキペディアで「Ddrescue」の詳細全文を読む スポンサード リンク
|