FreeBSD(98)を用いてCD-Rを焼く



最初にお断りしておきますが、このドキュメントはかなり古く なっており、一部現状にそぐわない部分があります。現在では、 cdrecordなどを用いてCD-Rを焼く方がよろしいかと思いますが、 cdrecordを用いたCD-Rの焼き方を書いている暇がありません... いろいろな方が書かれたページを御覧になる方が良いと思います。


2.1.7.1-RELEASEと2.2.1-RELEASEのbinとソースを一式自宅に 持ち帰るのが不便だったため、バイト先にあったCD writerを使用 してFreeBSDの配布物を焼いてみました。私は、イメージ作成を

という環境で行い、CD-Rへの書き込みは、 という環境で行いました。これはその時のメモです。


1. Windows95を用いてCD-Rを焼く場合
日本で一般的にCD-Rを焼く場合はこの方法になると思います。 というのは、FreeBSD 2.2-960323-SNAP以降では、"Plasmon RF4100" と"HP SureStore 4020i"の2つのドライブがサポートされている ので、これらのドライブを持っている方はFreeBSDだけでCD-R を焼く事ができるのですが、これらのドライブが日本では手に 入らないからです。後程これらのドライブを使用した場合の 手順も説明しますが、通常はこちらを参考にするとよろしい でしょう。

1-1. カーネルの再構築をする
CD-ROMのイメージを確認する場合、vnode ドライバを使用すると FreeBSD(98)上でCD-ROMに焼く前のイメージを確認する事ができ ます。したがって、"pseudo-device vn"を追加してカーネルの 再構築を行う事をお勧めします。具体的には、次のようにします。

コマンドでまとめると、次のようになります。
# cd /sys/pc98/conf
# cp GENERIC98 KERNEL
# vi KERNEL
ここで"pseudo-device vn"を追加し、セーブします。
# config KERNEL
# cd /sys/compile/KERNEL
# make depend all
# make install
# shutdown -r now

1-2. ディレクトリツリーの構成
次にCD-Rに焼くディレクトリツリーを構成します。これは好きな ように構成すれば良いのですが、FreeBSDをインストールできる形式 で焼こうと思った場合は、distsというディレクトリを作成し、その中に 配布物(2.1.7.1-RELEASEや2.2.1-RELEASEのディレクトリ)を置いて ください。つまり、/home/cdrom以下にツリーを構成する場合、 2.1.7.1-RELEASEのbinやsrcを/home/cdrom/distsというディレクトリに 置く事になります。

1-3. mkisofsコマンドのインストール
ISO9660形式のイメージを作成するコマンドは、mkisofsです。 FreeBSD 2.2からはpackagesに含まれていますので、 packages-2.2/sysutils/mkisofs-1.05.tgz を用いるなどして、 あらかじめインストールしておいてください。

1-4. iso9660形式のイメージファイルを作成する
続いて、ISO9660形式のイメージファイルを作成します。例えば、

# mkisofs -a -d -D -N -R -T -o /home/image /home/cdrom
と実行する事により、/home/cdrom以下のディレクトリの中身が ISO9660形式になって/home/imageという名前で作成されます。
また、-V 'VOLUMEID'オプションと-P 'Publisher ID' も使用でき ます。ちなみにFreeBSD 2.1 のCD-ROMは
# mkisofs -a -d -N -D -R -T -V "FREEBSD210A" -P "Walnut Creek CDROM 1-510-674-0783 FAX 1-510-674-0821" -o /mnt/a/cd0 /usr/tmp/freebsd-2.1/disc1
としたそうです。私はこんな感じで焼いてみました。
# mkisofs -a -d -N -D -R -T -V "FreeBSD" -P "FreeBSD(98) Core Team" -o /home/cdrom/image cdrom

1-5. 作成されたISO 9660イメージをチェックする
イメージを作成し終えたら、中身をチェックしてみてください。 中身を見ずに焼いてしまうと、大抵1回や2回は失敗してしまい ますので(^^;

# vnconfig /dev/vn0 /home/cdrom/image
# mount -t cd9660 /dev/vn0 /cdrom
を実行する事により、/home/cdrom/imageの中身が/cdromディレクトリ 以下に見えますので、中身をチェックしてみてください。もし、/dev/vn0 がない場合は、
# cd /dev
# ./MAKEDEV vn0
を実行して、/dev/vn0を作成してください。中身をチェックし終えたら、
# umount /cdrom
# vnconfig -u /dev/vn0
を実行し、unmountしてください。

1-6. イメージをWindows95に持っていく
FreeBSD(98)の動作しているマシンとWindows95の動作しているマシン 同士でLANを組んでいて、Win95上でTCP/IPを使用していれば、ftp コマンドで簡単にファイルの転送ができますね。ただし、ファイルの 転送には恐ろしく時間がかかります。378789888バイト(361MB)のイメージ を、平均583.75kbytes/secで転送して、649秒(約11分)かかりました。 650MBフルに焼き、さらにネットワークの性能が悪いと、ファイルの 転送だけで1時間程度かかる場合もあるでしょう。

1-7. イメージを書き込む
ISO 9660のイメージを焼くためのソフトとして、私は Adaptec Easy-CD 95というものを使用しました。このソフトは たぶんIO DATAのIO DATA CDR-VX24/SPCIに付いて来た物と 思われますが、よくわかりません(^^; 他にも同様のソフトは あると思います。

焼いてしまえばあとは普通のCD-ROMと何ら変わりがありません ので、その焼いたCD-Rをセットして、

# mount -t cd9660 /dev/cd0a /cdrom
# mount -t cd9660 /dev/wcd0a /cdrom
などを行えば、普通にRockridge形式でCD-Rをマウントできる と思います。


2. FreeBSDだけでCD-Rを焼く場合
日本では実現できないと思いますが、参考のために書いておきます。

2-1. 対応ドライブを入手する
前述の通り、"Plasmon RF4100"もしくは"HP SureStore 4020i" というドライブを入手してください。

2-2. カーネルの再構築をする
カーネルの再構築手順は前述の通りですが、更に "device worm0 at scbus?" も追加してください。

2-3. mkisofs コマンドでイメージを作成する
ここは前述の手順と全く同じです。

2-4. FreeBSDだけでCDを焼く
FreeBSDだけでCDを焼く場合、/dev/rworm0を使用します。 wormデバイスを作成するには、次のようにしてください。

# cd /dev
# ./MAKEDEV worm0
詳しくはworm(4)およびwormcontrol(8)を参照してください。 また、team(1) が必要です。これはports にありますので、 あらかじめインストールしてください。

以下ではCDを焼く手順だけ紹介しておきます。
# wormcontrol select PLASMON RF4100
# wormcontrol prepdisk double
# wormcontrol track data
# rtprio 5 team -v 1m 5 < cdrom.image | dd of=/dev/rworm0 obs=20k
# wormcontrol fixate 1


FreeBSD(98) 非公式ガイドに移動する
ホームページに戻る

karl@spnet.ne.jp
karl@jp.freebsd.org