7

光学メディア (CD および DVD) にアーカイブされたファイルのバックアップがあります。これらはすべて、別のメディアに保存された par2 リカバリ ファイルを持っています。par2 ファイルが存在しない場合でも、1 つの光学ドライブで読み取りを行う際の軽微なエラーは、別のドライブで正常に読み取ることができます。

問題は、障害のあるメディアを読み取る場合、デバイスが複数回再試行する傾向があるため、読み取り時間が非常に長くなることです。

問題は、再試行回数をどのように制御できるか (つまり、再試行なしまたは 1 回のみに設定) することです。何かのシステムコール?ダウンロードできるライブラリ? SCSI レイヤーで作業する必要がありますか?

質問は主に Linux に関するものですが、Win32 へのポインタも大歓迎です。

4

7 に答える 7

5

利用可能な最適なツールは dd_rhelp です。ただ

dd_rhelp /dev/cdrecorder /home/myself/DVD.img

お茶を飲みながら素敵なグラフィックをご覧ください。

dd_rhelp rpm パッケージ情報:

dd_rhelp は、ディスク全体で ddrescue を使用し、不良セクターで何年も試行する前に、有効なデータを最大限に収集しようとします。dd_rhelp の作業を無限に放置すると、単純な dd_rescue と同様の効果があります。しかし、この無限の時間がない可能性があるため、dd_rhelp は不良セクタを飛び越えて有効なデータを救出します。長期的には、dd_rescue を使用してすべてのデバイスを解析します。

必要に応じていつでも Ctrl-C を押して再実行できます。dd_rhelp は、dd_rescue が作成するログ ファイルに依存するため、ジョブを再開します。さらに、レスキュー中のデバイスの ASCII 画像で進行状況が表示されます。

私はそれを自分でたくさん使ってきましたが、非常に現実的です。

DAG から Red Hat のようなディストリビューションにインストールできます。

于 2009-02-17T13:50:40.550 に答える
2

dd が提案されたので、私はその存在を知っており、sg_dd を使用したことがあることに注意する必要がありますが、私の質問はコマンド (1) または (1m) ではなく、システム コール (2) またはライブラリ (3) に関するものでした。

編集

役立つもう 1 つの Linux コマンドライン ユーティリティは、sdparm. 次のフラグは、ハードウェアの再試行を無効にしているようです:

sudo sdparm --set=RRC=0 /dev/sr0

/dev/sr0私の場合、光学ドライブのデバイスはどこにありますか。

于 2008-09-29T19:24:14.650 に答える
1

ドライバーレベルのアクセスについて質問しているので、SCSIコマンド、またはおそらくASPIのようなAPIを調べる必要があります。Windowsでは、VSOソフトウェア(以下のblindread / hindwriteの開発者)は、ロックされた低レベルのアクセスを提供する、はるかに優れたAPIであるPatin-Couffinを開発しました。

http://en.wikipedia.org/wiki/Patin-Couffin

それはあなたが始めるかもしれません。ただし、実際にはUSB、SATA、ATA、IDEなどであっても、最終的にはドライブはSCSIコマンドとインターフェイスします。また、このCD-ROMSCSIレイヤーインターフェイスの最初の仕様の1つであるATAPIに関連する用語を検索することもできます。

上記の検索用語と概念を使用して、適切なLinuxライブラリまたは低レベルのコマンドを処理する例が見つからなかった場合は驚きます。


古い答え:

ブラインドリード/ブラインドライトは、CD-ROM保護スキームの全盛期に開発され、元のCDを検証するために意図的に不良セクタまたはエラー情報を使用することがよくありました。

これにより、再試行を含む多数のパラメーターを設定できます。CD-ROMドライブ自体が再試行回数を決定することを覚えておいてください。これが、多くの(ほとんどの?)CD-ROMドライブのソフトウェアを介して設定可能かどうかはわかりません。

エラーを無視してディスクをISO形式にコピーしてから、ISOユーティリティを使用してデータを読み取ることができます。

-アダム

于 2009-02-12T16:11:44.900 に答える
1

再試行回数を変更できるかどうかを確認している間hdparm(そうではないようです)、エラーの種類によっては、CD-ROM の速度を下げると、読み取りエラーの数が減る可能性があり、実際には平均読み取りが増加する可能性があると考えました。速度。ただし、一部のセクタが完全に読み取れない場合は、CD-ROM の速度を下げても効果がありません。

于 2008-09-29T18:50:30.283 に答える
-1

dd(1) はあなたの友達です。

dd if=/dev/cdrom of=image bs=2352 conv=noerror,notrunc

ドライブはまだ少し再試行する可能性がありますが、ファームウェアを変更しないと改善されないと思います。

于 2008-09-29T17:46:41.140 に答える