FreeBSD 4.5 + amd
はじめに
cdrom を使う時は、最初に mount して終わったら umount する必要がありますが、
amd(Auto Mount Daemon)を設定すると、ディレクトリにアクセスするだけで自動的にマウントされます。
SCSI 接続の CD-ROM を amd 設定してみます。
参考にしたページは、こちらhttp://www.jp.freebsd.org/QandA/HTML/666.html
前準備
amd を利用するためにはカーネルに NFS が組み込まれている必要があります。
通常は最初から入っていますが、一応確認してみましょう。
/usr/src/sys/i386/conf/GENERIC を vi で開きます。
mico# cd /usr/src/sys/i386/conf
mico# pwd
/usr/src/sys/i386/conf
mico# ls GENERIC
GENERIC
以下の行があれば OK です。
options NFS #Network Filesystem
options NFS_ROOT #NFS usable as root device, NFS required
次に、CD-ROM のデバイス名を見てみます。
CD-ROM がついている状態で、FreeBSD をインストールすると、/etc/fstab にデバイス名が設定されますので、
これを確認します。
mico# cat fstab
# See the fstab(5) manual page for important information on automatic mounts
# of network filesystems before modifying this file.
#
# Device Mountpoint FStype Options Dump Pass#
/dev/ad0s1b none swap sw 0 0
/dev/ad0s1a / ufs rw 1 1
/dev/ad0s1f /tmp ufs rw 2 2
/dev/ad0s1g /usr ufs rw 2 2
/dev/ad0s1e /var ufs rw 2 2
/dev/cd0c /cdrom cd9660 ro,noauto 0 0
proc /proc procfs rw 0 0
CD-ROM は、/dev/cd0c であることがわかります。ATA接続のCD-ROM の場合は、wcd0c とかになるでしょう。
設定
/etc/amd.map を編集します。
mico# cd /etc
mico# vi amd.map
私は、この書式にしました。
/defaults fs:=/a/${key}
# SCSI CD-ROM
cdrom type:=program;\
mount:="/sbin/mount mount -t cd9660 /dev/cd0c ${fs}";\
unmount:="/sbin/umount umount /dev/cd0c";
次に、マウントディレクトリを作成します。
上の書式内にある /a/cdrom を作成します。
実際は、/mnt/cdrom がディレクトリになります。
mico# mkdir -p /a/cdrom
起動時に、amd を起動する為、/etc/rc.conf に以下の内容を追加します。
amd_enable="YES"
amd_flags="-l syslog -c 20 /mnt /etc/amd.map"
-c 20 は、20秒たったら自動的に umount する設定です。
とりあえず、reboot しましょ。
動作確認
CD-ROM ドライブに、FreeBSD のインストールディスクを入れて、/mnt/cdrom ディレクトリに cd してみましょう。
mico# cd /mnt/cdrom
mico# ls
4.4-RELEASE cdrom.inf packages-4.4-release
成功成功!
自動的に、amd.map に書いてある /sbin/mount mount -t cd9660 /dev/cd0c /a/cdrom が実行されて、成功したことになります。
amd の状態を確認するには、amq を実行すると表示できます。
mico# amq
/ root "root" mico:(pid67)
/mnt toplvl /etc/amd.map /mnt
/mnt/cdrom program mount -t cd9660 /dev/cd0c /a/cdrom /a/cdrom
手動で umount するには、以下のようにします。
amq すると、/mnt/cdrom がなくなっていることがわかります。
mico# cd /
mico# amq -u /mnt/cdrom
mico# amq
/ root "root" mico:(pid67)
/mnt toplvl /etc/amd.map /mnt
root ではないユーザも CD-ROM を自由に使えます。
> cd /mnt/cdrom
> ls
4.4-RELEASE cdrom.inf packages-4.4-release
戻る
|