GLAN TANK - DVD焼きマシン化
NASに動画ファイルを置くようにしても、保存しておきたいものはDVDに焼くことになる。でも、Windowsマシンにコピーして焼くのがとてもメドイ。
だから、直接NASから焼けるようにしたら・・・
実験のつもりでやってみたら意外と簡単にできてしまった。
USB接続DVDドライブを用意
LGのスーパーマルチドライブGSA-4163BをRatocのUSBドライブケースRS-U2EC5Xに入れた。
# とりあえずWindowsマシンからドライブを取ってしまったので、買いにいかなくちゃ。。
GLAN TANKに接続
GLAN TANK側は何もいじらずにとりあえず接続。
以下のように認識。
usb 3-1: new high speed USB device using ehci_hcd and address 2
Initializing USB Mass Storage driver...
scsi0 : SCSI emulation for USB Mass Storage devices
usbcore: registered new driver usb-storage
USB Mass Storage support registered.
usb-storage: device found at 2
usb-storage: waiting for device to settle before scanning
Vendor: HL-DT-ST Model: DVDRAM GSA-4163B Rev: A103
Type: CD-ROM ANSI SCSI revision: 00
Attached scsi generic sg0 at scsi0, channel 0, id 0, lun 0, type 5
usb-storage: device scan complete
DVD-Rを焼く
適当なディレクトリに焼きたいファイルを置いてmkisofsでISOイメージを作成。
-jcharsetでローカルマシンのファイルシステムで使用しているファイル名の文字コードを指定すれば自動的にUnicodeに変換してくれるらしい。
# mkisofs -r -J -joliet-long -jcharset EUC-JP-MS -o
<ターゲットディレクトリ>
growisofs(dvd+rw-toolsに含まれる)でDVDに焼く。
# growisofs -Z /dev/sr0=
以上でok。
8倍速対応メディアで2枚ほど焼いてみたが、どちらも平均5.9倍速で焼けた。
ちょっと遅いが、十分実用的。
焼きスクリプト
特定のディレクトリにファイルを置いておけば、ISOイメージ作成・サイズチェック・焼き・ベリファイまで行ってくれるスクリプトを作成。
Samba経由でファイル移動・ファイル名の変更をして、スクリプトを実行するだけで焼ける。かなり便利。
#!/bin/sh ISOFILE=/tmp/image.iso TARGET=/share/dvd check_error() { if [ $1 != 0 ]; then echo "$2 error!!" exit 1 fi } echo "Start mkisofs..." mkisofs -r -J -joliet-long -jcharset EUC-JP-MS -o $ISOFILE $TARGET check_error $? mkisofs SIZE=`du -b $ISOFILE | awk '{ print $1 }'` # (一般的なDVD-Rメディアのセクタ数 2,298,496) x 2,048 = 4,707,319,808 if [ $SIZE -ge 4707319808 ]; then echo "size BIG!!" exit 1 fi echo "Start writing DVD..." growisofs -Z /dev/sr0=$ISOFILE check_error $? growisofs mount /dev/sr0 /mnt/dvd check_error $? mount echo "Start verify..." diff -r /mnt/dvd $TARGET check_error $? diff umount /mnt/dvd check_error $? umount rm $ISOFILE check_error $? rm exit 0