web-dev-qa-db-ja.com

LinuxでソースBlu-RayからISOイメージを作成して書き込む

私の目的は、Blu-Rayディスクの正確なビット単位の同一コピーを作成し、すべてのオリジナルコンテンツ、DRMなどをそのままにすることです。 ddコマンドを使用して.isoにリッピングし、空のBDに焼き戻すにはどうすればよいですか?

この特定のアプローチに従って で正確なDVDコピーを作成することに成功しました。

上記の指示に従った私の基本的な手順は次のとおりです。

  1. ブロックサイズとボリュームサイズのパラメーターを使用してddを実行すると、正確ですぐに作成できるISOイメージが得られます。
  2. Ddを使用してISOイメージを空のDVDに書き込む
  3. .isoに再リッピングしてDVDコピーを確認し(手順1を参照)、結果のISOイメージをDVDの作成に使用したISOイメージと比較します(ファイルサイズ、MD5チェックサムは同一でした)

私の知る限り、一般的にBDはISO 9960形式ではないため、isoinfo -d -i /dev/cdromコマンドを使用して小売BDのブロックサイズとボリュームサイズを読み取ることはできません。したがって、私はいつものように基本的な手順に従いましたが、bsおよびcount引数なしでdd if=/dev/cdrom of=test.isoコマンドを使用しました。予想どおり、最終比較(ステップ3)では、2つの異なるISOファイル(1つの大きなファイル、異なるMD5合計)が残ります。

誰にもこれに対する解決策がありますか?リッピングルーチンでいくつかの必須bsおよびcount引数が欠落していると思いますが、最初に必要な情報(論理ブロックサイズ、BDのボリュームサイズ)を取得するにはどうすればよいですか?

よろしくお願いします。

1
mrtux

ブロックサイズを取得するには、blockdev --getbsz /dev/sr0を使用します。ここで、[/ dev/sr0]は、使用するドライブの量とblockdev --getsz /dev/sr0を使用してブロック数に応じて変化します。ブロックサイズ。これは、通常のDVDでisoinfo -d -i /dev/sr0を使用してテストできます。

私の理解からddはうまく機能し、サイズ変数やカウント変数が設定されていなくても、ブルーレイの完全なコピーを作成します。これらの変数は、データがディスクほど大きくない場合によくあるように、物理的には存在するが情報を保存しないディスクの未書き込み部分をスキップする場合にのみ使用されます。

サイズ変数とカウント変数なしでブルーレイのISOを作成し、ビット単位の比較cmpを使用してディスクと比較することをテストしましたが、エラーは発生しませんでした。それがうまくいかなかった理由は、それをさらに別のディスクに書き込んだからだと思います。これは(@JonasCzが言ったように)コピー防止のため機能しません。

ただし、ISOは正常に再生されます。
Windowsでleawoを使用して、ブルーレイISOを正常に開いて視聴しました。

例えば:

  • blockdev --getsz /dev/sr0は16142856を表示します。
  • blockdev --getbsz /dev/sr0は2048を表示します。
  • 16142856 * 512 = 8265142272、
  • 8265142272/2048 = 4035714。

これは、DVDで使用する場合のisoinfo -d -i /dev/sr0の出力と等しくなります。

  • 論理ブロックサイズ:2048
  • ボリュームサイズ:4035714
3
Anonymus