もぐてっく

人は1つ歳をとるたび、1ビットづつ大きくなれると信じてた。

DVD-RWのパケットライト

とある弊社のS/W改造仕様書のレビューコメント。

DVD-RAMだけじゃなくてDVD-Rにも対応してください。」

ちぃ!この短納期で簡単に言ってくれるぜ!
ISO9660は対応不可!ライブラリないしDVD-RAM用にある今の処理が使いまわせない。
となるとパケットライトだけど、確かメンドイんだよなぁ。

・・・出来るかな?一応試す。
環境はDebian4.0

モジュールのロード

/etc/modulesに書いとけば良いと思う。

modprobe udf

物理フォーマット

strict overwrite方式にフォーマットする。

dvd+rw-format -force=full /dev/sr0

パケットライトインターフェースに実デバイスをアサイン

これで/dev/sr0用の/dev/pktcdvd/0が出来る。

pktsetup 0 /dev/sr0

UDFでフォーマット

ここでmedia_typeをdvdにするとリードオンリーでしかマウントできなくなる。すなわち使えない。

mkudffs --media_type=dvdrw /dev/pktcdvd/0

ようやくマウント

mount /dev/pktcdvd/0 /media/cdrom

フォーマット済みの時はpktsetupとmountでOK。

イジェクトはこう。

まずアンマウント

umount /media/cdrom

パケットインターフェースの削除

これをしなくてもイジェクトはできるけど、メディアを変えての再利用は不可なので必ず削除のこと。

pktsetup -d 0

イジェクト

eject

うむ、処理中に無数に散らばるマウントとアンマウントでのコマンドの整合性を取るのがメンドイけどできそう。
でも、dvd+rw-formatでのフォーマットに時間が掛かるから、実用は要検討かも。