最新更新日 2000.01.11.
更新項目
/dev/vn0 をが使えるようになった。
まずは、友人から書き込み可能な CD-R を借りて来て、自分の FreeBSD に付けます。そして、取り合えずは cd が二つ付けられる様に /dev/ の下でデバイスを作ったり、カーネルのリコンフィグの必要があれば作成し直します。
今回は、以下の様に認識されました。
---------------- cd0 at ahc0 bus 0 target 4 lun 0 cd0:上のが今回付けた CD-RW の CD で、PLEXTOR 製 の PX-W4220T と、言う製品みたいです。もう一つは普通の CD になります。こちらは、cd1 として認識しました。Removable CD-ROM SCSI-2 device cd0: 10.000MB/s transfers (10.000MHz, offset 8) cd0: Attempt to query device size failed: NOT READY, Medium not present - tray closed cd1 at ahc0 bus 0 target 6 lun 0 cd1: Removable CD-ROM SCSI-2 device cd1: 10.000MB/s transfers (10.000MHz, offset 8) cd1: Attempt to query device size failed: NOT READY, Medium not present ----------------
さて、ハード、カーネルの準備が整ったので次にソフトをそろえます。cdrecord と、言うのが packages にあるので、pkg_add しましょう。私は、cdrecord-1.8a22 と、言うバージョンを利用しました。後、mkisofs-1.12b5 と、言うのも必要になるかもしれないのでこっちも用意しておきましょう。
これで準備バンタン。では、いよいよ作業に移ります。今回の作業は、cd0 に入れた CD イメージをディスクに落して、その後で CD-R に焼き移す。と、言うちょっと危ないネタに迫ってみましょう;-)。手順は以下になります。
1. CD イメージをディスクに保存する。
dd コマンドで、バックアップする CD を入れたデバイス(今回の場合は /dev/cd0) から dd で CD のイメージを取り出し、HDD 上に展開します。と、言う事は HDD はそれなりのスペースが無いとだめだ。と、言う事ですね(^^;;。
---------------- dd if=/dev/cd0c of=/var/tmp/cd-img.iso ----------------2. 出来たイメージが iso9660 フォーマットかを確認する。
---------------- vnconfig /dev/vn0 /var/tmp/cd-img.iso mount_cd9660 /dev/vn0 /cdrom ----------------Device not configured になってしまう時、それは、vn0 が使えない。と、言う事ですね。カーネルをそれ対応にする必要があります。LINT 中の以下の一行を自分の config ファイルに追加してカーネルを作り直しましょう。
---------------- pseudo-device vn #Vnode driver (turns a file into a device) ----------------これで対応したカーネルを作成した後でもう一度トライしてみましょう。
3. 中身の確認が終ったら後始末をする。
umount してから、vnconfig します。これで確認はおしまい。
#この動作は、3.3-RELEASE では確認出来ませんでした。Device notconfigured になってしまいました。
---------------- umount /cdrom vnconfig -u /dev/vn0 ----------------4. 書き込みの確認をする。
---------------- cdrecord -dummy -speed=2 -packet dev=0,4,0 /var/tmp/cd-img.iso ----------------dev=HOGEHOGE の所が問題ですが、日本語マュアル を読んでみるとよいでしょう。基本的には、dmesg の結果の、
---------------- cd1 at ahc0 bus 0 target 4 lun 0 ----------------をみて、dev=0,4,0 と指定してあげれば良いでしょう。2.2.8-RELEASE 系では、デバイスを作成してあげる必要があります。
---------------- rm /dev/scgx ln -s /dev/rcd0.ctl /dev/scgx ----------------してから、dev=/dev/rcd0.ctl:@ と指定してあげるのがよさそうです。こんな感じですね。
---------------- cdrecord -dummy -speed=2 -packet dev=/dev/rcd0.ctl:@ /var/tmp/cd-img.iso ----------------5. 書き込みを行う。
---------------- cdrecord -speed=2 -packet dev=/dev/0,4,0 /var/tmp/cd-img.iso ----------------こうして出来た CD は Windows で使ったり、FreeBSD で mount 出来たりするので無事に出来たモノを試してみてください。ふぅぅ。
さて、これらは一連のコマンドは、CD イメージを CD-R に焼く方法でしたが、DISK イメージを CD-R に焼くには、1. のステップを以下の様にしてみてください。
1. HDD のイメージを ISO9660 に変換する。
./CD-R と、言うディレクトリを /var/tmp/hdd-img.iso に取り出します。その時、ヘッダは、-V "MP3-DATA"
とかしておきました。これで HDD イメージが CD イメージ同様、/var/tmp の下に出来ました。後は、2. に続きましょう;-)。
---------------- mkisofs -r -J -d -N -D -R -T -V "MP3-DATA" -o /var/tmp/hdd-img.iso ./CD-R ----------------オプションですが、どうもこれが一番よさげです。いろいろ試してみましたが、あるオプションが無いと、Windows 側で 8.3 ファイルになってしまったりするのですが、このオプションだと大丈夫でした。
と、言う事で、FTP サイトから拾って来たデータを CD に焼く事も出来る様になりましたね。ふふふ(^^)V。これでばっちりだ。うんうん。
#と、言う事だが、僕は失敗しています・・。HDD イメージを CD-R に焼いた事は無いです(^^;;。
とまぁ、こんな感じで CD-WR が活用出来ます。うれしい事ですねぇぇ。