Linux で BD-RE を UDF フォーマットする - メディア タイプ「bdr」が不明ですか?

Linux で BD-RE を UDF フォーマットする - メディア タイプ「bdr」が不明ですか?

これは、Ubuntu 20.04.1、Pioneer BDR-XS07、50 GB BD-RE (異なるベンダーの複数のディスクをテスト済み) で実行されています。

UDF バージョン 2.50 でディスクをフォーマットすると、次のようになります。
$ sudo mkudffs --utf8 --blocksize=2048 --media-type=bdr --udfrev=0x0250 --lvid=Backup2 --vid=Backup2 /dev/sr0

しかし、マウントしても ( Unable to mount volume backup: Gio.IOErrorEnum: Error mounting /dev/sr0 at /media/cts/backup: wrong fs type, bad option, bad superblock on /dev/sr0, missing codepage or helper program, or other error) は発生しません。

ディスクをメディア タイプ「ハードディスク」としてフォーマットすることもでき、
$ sudo mkudffs --utf8 --blocksize=2048 --media-type=hd --udfrev=0x0201 --lvid=Backup2 --vid=Backup2 /dev/sr0 その後のマウントと書き込みは成功します。

問題の理論的な原因として、1 つ思い当たることがあります。それ
は、間違ったメディア タイプを使用すると、UDF ブロック/領域のレイアウトが異なってしまうことです。

$ sudo mkudffs --utf8 --blocksize=2048 --media-type=hd --udfrev=0x0201 --lvid=Backup2 --vid=Backup2 /dev/sr0
filename=/dev/sr0
label=Backup2
uuid=600c858ed35ee0c9
blocksize=2048
blocks=23652352
udfrev=2.01
start=0, blocks=16, type=ERASE 
start=16, blocks=4, type=VRS 
start=20, blocks=76, type=ERASE 
start=96, blocks=16, type=MVDS 
start=112, blocks=16, type=ERASE 
start=128, blocks=4, type=LVID 
start=132, blocks=124, type=ERASE 
start=256, blocks=1, type=ANCHOR 
start=257, blocks=23651832, type=PSPACE 
start=23652089, blocks=6, type=ERASE 
start=23652095, blocks=1, type=ANCHOR 
start=23652096, blocks=96, type=ERASE 
start=23652192, blocks=16, type=RVDS 
start=23652208, blocks=143, type=ERASE 
start=23652351, blocks=1, type=ANCHOR 
$

$ sudo mkudffs --utf8 --blocksize=2048 --media-type=bdr --udfrev=0x0250 --lvid=Backup2 --vid=Backup2 /dev/sr0
filename=/dev/sr0
label=Backup2
uuid=600c854ca5a22d78
blocksize=2048
blocks=23652352
udfrev=2.50
vatblock=319
start=0, blocks=16, type=RESERVED 
start=16, blocks=4, type=VRS 
start=20, blocks=76, type=USPACE 
start=96, blocks=16, type=MVDS 
start=112, blocks=16, type=USPACE 
start=128, blocks=1, type=LVID 
start=129, blocks=95, type=USPACE 
start=224, blocks=16, type=RVDS 
start=240, blocks=16, type=USPACE 
start=256, blocks=1, type=ANCHOR g
start=257, blocks=31, type=USPACE 
start=288, blocks=23651776, type=PSPACE 
start=23652064, blocks=31, type=USPACE 
start=23652095, blocks=1, type=ANCHOR 
start=23652096, blocks=256, type=USPACE 
$

つまり、BD-RE から最高のパフォーマンス、信頼性、欠陥管理が得られていないということでしょうか?

Linux で UDF ファイルシステムを使用してパケット書き込み用に BD-RE をフォーマットする正しい方法は何ですか?

答え1

私もこの永遠の問題に戻ってきましたが、今回は解決しました。Windows と macOS は rev. 0x0250 での書き込みをサポートしているという事実に、私は生意気だったことを覚えています。Linux はサポートしていません。

私の古いドキュメントでは、0x250 を明示的に要求していることが示されていますが、私はそれを知っていました。

出力を確認してください。1 つのイメージには rev. 2.50 があり、もう 1 つのイメージには 2.01 があります。後者は書き込み操作をサポートしますが、前者はエラー メッセージが表示されるか、読み取り専用になります。

プロセスは実際には非常に簡単です():

  1. メディアをフォーマットする一度欠陥管理のため。
dvd+rw-format '/dev/sr0' ;
  1. UDFFS をそれに付けます:
mkudffs --utf8 \
        --blocksize=2048 \
        --media-type=dvdrw \
        --udfrev=0x0201 \
        --lvid=Backup2 \
        --vid=Backup2 \
        '/dev/sr0' ;

BluRay は結局のところ DVD です。

  1. パケットデバイスをマウントします。
mount -t udf -o rw,noatime,async \
'/dev/sr0' '/data/filesystem/disc/'

停電やシステムクラッシュが予想される場合は、syncの代わりにを使用することをお勧めしますasync

関連情報