最新更新日 '99.04.22.
カーネルにパッチを当てて完璧(^^)V。を追加しました。


どーでも良いが、MO がぁぁ(g_g)
 本当にどーで良い事なのですが、MO が全くもって使えない・・。ちょっとグチりぎみで今回は書いてしまうのだ。ぶつぶつぶつぶつぶつぶつブツブツブツブツブツブツ(-"-)。

 僕は 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 ドライバパッチが出てからと言う事にしといてください。

使える様になったよ。MO (^^)らんらん。
 この上は、3.1-RELEASE が出て、インストールした当初に書いた内容で MO が使えなくて困ったのですが、ふふふ。何故今まで使えなかったのか解りました。それが解れば結構サクサク使えてるので良かったぁぁ。って感じです。ふふふ(^^)V。では、なぜ、急に使える様になったのか?と、言う点に触れてみましょう。

 私の場合、SCSI カードは Adaptec の AHA-2940 で、MO は dmesg を見ると以下の様になります。

----------------
da2:  Removable Optical SCSI-2 device 
da2: 8.64MB/s transfers (8.64MHz, offset 10)
da2: 217MB (446325 512 byte sectors: 64H 32S/T 217C)
----------------
本来なら多分問題無く使えて良いはずなのですが、私のは FAT フォーマットの MO を mount して umount した時に一定の条件の時に必ずマシンが reboot していたんです。その原因は、MO の ライトプロテクトでした。ライトプロテクトを有効にしている時、mount コマンドでは "-o ro" を付けない場合、
----------------
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 でなんか聞いて来るかもしれませんがとりあえずはリターンキーを三回位叩いて完了します。お試しください。

カーネルにパッチを当てて完璧(^^)V。
 えっと、mount する時にオプションを付けたおかげで大部安定して来ました。しかしっ!!まだまだ怪しいメッセージをボコボコ吐き出す時が有ります。そんな時は最後の手段。カーネルにパッチを当てましょう。

 素晴らしい事に 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 が使える事でしょう;-)。ぶあんざいっ!!\(^^)/


Copyright (c) 1997-2004 takachan@running-dog.net All Rights Reserved.