web-dev-qa-db-ja.com

ddrescueはosxで大幅に減速しました

ドライブのイメージを作成するためにddrescueを使用していますが、起動時の速度が約.1%に低下しています。このレートでは、ドライブが終了するかどうかはわかりませんが、とにかく、できるかどうかはわかりませんそれをするのに長い間この機械を縛ってください。誰かが助けてくれることを望んでいますか、またはドライブをイメージする他の方法をお勧めしますか?

セットアップ:-10.8を実行しているmacbookpro-macportsからインストールされたddrescue-ソースドライブはフリーザーにあり、SATA-USBアダプターを使用してラップトップにケーブルが不足しています同一モデルのターゲットドライブsata to usbEnclosureの640gigmaxtor-使用されたコマンドは次のとおりです:-ログファイルは/root/rescue.logに書き込まれています(どのファイルシステムでも/ macbook上にあります)-コマンドからの端末出力と以下で再開しようとしています、あなたはそれを見ることができますだった平均7000kbsそして今平均約5000bpsです!

ヒントは大歓迎です!イアン

Iains-MacBook-Pro:~ root# ddrescue -f -g -v -n /dev/disk1 /dev/disk2 /root/rescue.log
ddrescue: warning: Options -aCdDeEIMnOprRStTx are ignored in generate mode.


GNU ddrescue 1.16
About to generate an approximate logfile for /dev/disk1 and /dev/disk2
    Starting positions: infile = 0 B,  outfile = 0 B
    Copy block size: 128 sectors
Sector size: 512 Bytes

Press Ctrl-C to interrupt
rescued:     2543 MB,  generated:    2731 MB,  current rate:    8847 kB/s
   opos:     2731 MB,                          average rate:    9134 kB/s
Generating logfile...
ddrescue: Error opening logfile '/root/rescue.log' for writing: No such file or directory
Fix the problem and press ENTER to retry, or Q+ENTER to abort. 


rescued:   474160 MB,  generated:  499761 MB,  current rate:     5461 B/s
rescued:   474160 MB,  generated:  499761 MB,  current rate:     3449 B/s
   opos:   499761 MB,                          average rate:    7440 kB/s
Generating logfile...
Interrupted by user
Iains-MacBook-Pro:~ root# 
Iains-MacBook-Pro:~ root# ddrescue -f -g -v -n /dev/disk1 /dev/disk2 /root/rescue.log
ddrescue: warning: Options -aCdDeEIMnOprRStTx are ignored in generate mode.


GNU ddrescue 1.16
About to generate an approximate logfile for /dev/disk1 and /dev/disk2
    Starting positions: infile = 0 B,  outfile = 0 B
    Copy block size: 128 sectors
Sector size: 512 Bytes

Press Ctrl-C to interrupt
Initial status (read from logfile)
rescued:   474160 MB,  generated:  499761 MB
Current status
rescued:   474164 MB,  generated:  499765 MB,  current rate:     5041 B/s
   opos:   499765 MB,                          average rate:     8793 B/s
Generating logfile...
4
Iain Duncan

これはddrescueの予想される動作です。ディスクの損傷した領域にある小さなチャンクの読み取りが遅くなります。あなたのドライブが冷凍庫にあることを考えると、私はそれが問題を抱えていて、あなたが情報を救おうとしていると思います。 Ddrescueは、そのような状況で使用するツールです。

手動 から

Ddrescueのアルゴリズムは次のとおりです(ユーザーはいつでもプロセスを中断できますが、不良ドライブはカーネルが放棄するまでddrescueを長時間ブロックする可能性があることに注意してください)。

1)オプションで、マルチパートまたは以前に中断されたレスキューのステータスを説明するログファイルを読み取ります。ログファイルが指定されていないか、空であるか存在しない場合は、すべてのレスキュードメインを未試行としてマークします。

2)すべてのレスキュードメインが試行されるまで、入力ファイルの試行されていない部分を読み取り、失敗したブロックをトリミングされていないものとしてマークし、それらを超えてスキップします。試行されていない領域のみが大きなブロックで読み取られます。トリミング、分割、再試行はセクターごとに行われます。各セクターは最大2回試行されます。このステップの最初のステップは大きなブロック読み取りの一部として、2番目のステップは以下のステップの1つとして単一セクターの読み取りとして行われます。

3)不良セクタが見つかるまで、トリミングされていないブロックを一度に1セクターずつ逆方向に読み取ります。トリミングされていないブロックごとに、見つかった不良セクタを不良セクタとしてマークし、そのブロックの残りの部分を非分割としてマークします。

4)読み取りは、分割されていないブロックを一度に1セクターずつ転送し、不良セクターが不良セクターとして検出されたことを示します。十分な大きさのブロックで多数の連続した不良セクタが見つかった後、ブロックは半分に分割され、読み取りは後半に続行されます。これにより、ログファイルが大きくなりすぎることなく、失敗した最大のブロックが再帰的に分割されます。

5)オプションで、指定された再試行回数に達するまで、不良セクタの読み取りを再試行します。

6)オプションで、後で使用するためにログファイルを書き込みます。

3
ForeverWintr

@ForeverWintr応答の手動情報によると、接続を停止してディスクを逆方向に読み取ろうとすることをお勧めします。これにより、ディスクが停止している場合に、より多くの情報をすばやく取得できる可能性があります。 ddrescueに最初は大きなブロックをスキップするように指示することもできますが、最終的には、DDRescueが可能な限り完全に回復しようとすると(永遠に?)時間がかかる可能性があります。取得できるものを取得して、読み取れないビットを書き留めるだけで済むようになる場合があります。ただし、多くの場合、放置する時間が長くなるほど、回復します。私は320ギガのドライブを持っていて、事実上すべてのデータを引き出すのに数日かかりました-ディスクが死んでいたのでプロセスは非常に遅かった-結局ディスクから約100kを除いてすべてが得られたと思います。

1
davidgo