最新更新日 '99.04.22.
カーネルにパッチを当てて完璧(^^)V。を追加しました。
僕は SCSI 構成の PC なのですが、da0、da1、da2 と言う感じで HDD を認識します。しかし、HDD を一個外付けにして「たまにしか電源を入れない。」とか、「りむーばぼぉな HDD なの。うふっ(^^)。」ってな感じににしていると MO のデバイスはしょっちゅう変わってしまう・・(-"-)。と、言うは、da0、da1、da2 と来た時、MO ドライバは絶えず一番最後の番号を割り当てられる。と、言う事になるっ!!
あれっ?ちょっとまってっ!!もしかしたらウソ書いているかも・・。SCSI-ID でドライブ番号は割り当てられているのかな?(^^;;。とまぁ、そんな感じです。
実は、2.2.8-RELEASE は、OD ドライバパッチが無くて UFS な MO は使えないけど、なんとか FAT な MO を使えていたんですね。まだちっとだけまとも。
あ、今の所 MO をガシガシ使う人は、2.2.7-RELEASE がお勧めです。
所が今回の 3.1-RELEASE では、MO は根こそぎ使えないです。例えば、mount_msdos -l /dev/da2 /mo とかした時、一応、mount されて使える事もあるのですが、umount /mo とかしたらカーネルがパニック起こしたりとかとにかく重傷です。ひどいです。恐くて使えないです。あ、後、ぼこぼこエラーメッセージが出力されます。これもひどい・・。
と、言う事でグチはここまで。けど、OD ドライバパッチが無いのでこれ以上書けないです(^^;;。つづきは OD ドライバパッチが出てからと言う事にしといてください。
私の場合、SCSI カードは Adaptec の AHA-2940 で、MO は dmesg を見ると以下の様になります。
---------------- da2:本来なら多分問題無く使えて良いはずなのですが、私のは FAT フォーマットの MO を mount して umount した時に一定の条件の時に必ずマシンが reboot していたんです。その原因は、MO の ライトプロテクトでした。ライトプロテクトを有効にしている時、mount コマンドでは "-o ro" を付けない場合、Removable Optical SCSI-2 device da2: 8.64MB/s transfers (8.64MHz, offset 10) da2: 217MB (446325 512 byte sectors: 64H 32S/T 217C) ----------------
---------------- Apr 11 20:49:09 pochi /kernel: (da2:ahc0:0:5:0): WRITE(06). CDB: a 0 1 d5 80 Apr 11 20:49:09 pochi /kernel: (da2:ahc0:0:5:0): DATA PROTECT asc:27,0 Apr 11 20:49:09 pochi /kernel: (da2:ahc0:0:5:0): Write protected ----------------こんなメッセージが定期的に出て、umount した時 kernel が sync たたけないんでしょうね。reboot してしまいます。
MO にライトプロテクトしてあり、mount_msdos -l /dev/da2 /mo でマウントして利用した後、umount /mo した時に、100% の確立で FreeBSD が reboot してしまいます。MO を利用する時は、マウント時、以下の様にしましょう。
# mount_msdos -l -o ro /dev/da2 /mo
-o で ro (read only) と指定します。もしくは MO のライトプロテクトを外した時は、
# mount_msdos -l /dev/da2 /mo
でも構いません。(こちらの mount は書き込み可状態です。)
考えて見たら、私の場合、mp3 を聞く為に MO を利用しているのですが、ほとんどの MO にライトプロテクトをかけていました(^^;;。なので私は、「MO が使えない。」等とここで書いてしまったと言う事なのですね・・(^^;;。一人で騒いでいた。と、言う事です。ごめんなさいでした(^^;;。
●128MB MO に ufs fulesystem を作るには?
以下、おまけです。230MB の ufs は多分作れると思いますが、128MB の ufs な MO は作れないと思います。それなら作れる様にするしか無いですね。以下の要領でチャレンジしてみましょう。
1. /etc/disktab に以下の行を追加します。
---------------- mo128|Generic 3.5in 128MB MO disk:\ :dt=SCSI:ty=removable:\ :se#512:nt#64:ns#32:nc#122:su#248826:\ :pa#248826:oa#0:ba#8192:fa#1024:ta=4.2BSD:\ :pb#0:ob#0:tb=swap:\ :pc#248826:oc#0: ----------------2. 続いて以下のコマンドを打ってそれらしい filesystem を作ります。
---------------- # disklabel -r -w -B da2 mo128 # newfs /dev/rda2a ----------------あーうー。この時、デバイス名を間違えたらどえりゃーー事になります。徹底的に注意しましょう。僕の場合は、da0 、da1 に HDD で二つ付いています。その後の da2 が MO です。
newfs でなんか聞いて来るかもしれませんがとりあえずはリターンキーを三回位叩いて完了します。お試しください。
素晴らしい事に FreeBSD-users な ML でそのパッチが公開されました。
http://www.jp.FreeBSD.ORG/~yuki/FreeBSD/readmail.cgi?source=users-jp&docnum=40351
あきやまさん と言う方が対応するパッチを公開してくださいました。メールの内容に従いパッチを当てて、カーネルに一行追加して新しいカーネルを作ってあげるだけです。簡単です。それで居て安定度抜群です。
注意点はカーネルのコンフィグファイルを config する時 「FFS_COMPAT_XXXXBSD なオプションしらねーぞ。」って言われるのですが、構わず make depnd;make してしまう事です;-)。
と、言う事でこれらの処理をビシッとやると 2.2.7-RELEASE+od-driver 位に安定して MO が使える事でしょう;-)。ぶあんざいっ!!\(^^)/