FreeBSD QandA 1999年6月3日 更新分
管理番号 1104 (新規)
更新履歴
Q. FreeBSD が内蔵ハードディスクにすでに install されているノートパソコ
ンに PCMCIA の SCSI カードを使用して SCSI ハードディスクを外付け追加す
るときの方法を教えて下さい。
A. /etc/fstab に
/dev/sd0s1e /hoge/hoge ufs rw,noauto 0 0
のように追加ディスクの mount 位置を追加します。このとき、noauto にして
おかないと FreeBSD の起動時の mount に失敗して、立ち上げられません。
使用するときは、SCSI カードを挿入してから、
mount /hoge/hoge
使用後は、SCSI カードを抜く前に、
umount /hoge/hoge
とします。
[注意]
1. SCSI カードが抜かれてしまってからでは umount できません。ですから、
/etc/pccard.conf の中で、使用している SCSI カードのエントリに
remove umount /hoge/hoge
を追加しても無意味です。FreeBSD 稼働中に SCSI カードを抜く前には、必ず
手動で SCSI ハードディスクを umount しましょう。うっかり umount を
忘れて SCSI カードを抜いた場合、kernel が panic あるいはもっと悪い
状態になることがありますので注意しましょう。
2. /etc/pccard.conf の中で、使用している SCSI カードのエントリに
insert mount /hoge/hoge
を追加しておくと、立ち上げ時はもちろん、後から SCSI カードを挿入しても、
SCSI ハードディスクが自動的に mount されますが、前述の通り umount は
自動化できません。SCSI カードを抜く前に umount するのを忘れがちに
なりますので、この設定はしない方がよいでしょう。
管理番号 1252 (新規)
更新履歴
Q. tcsh の日本語マニュアルというものは存在するのでしょうか?
A. tcsh6.02 のマニュアルだったら、
<URL:ftp://ftp.tohoku.ac.jp/pub/unix/shells/tcsh/japanese-man/>
にあります。
管理番号 1334 (新規)
更新履歴
Q. boot -v などで起動すると、起動メッセージの最初の部分が、dmesg にも
/var/log/messages にも残っていないのですが。
A. dmesg で表示されるメッセージは、カーネルがメッセージバッファに貯めて
いるものです。このサイズは決まっており、起動時のメッセージが長すぎると
バッファに入り切らず、先頭部分が表示されなくなります。
また、/var/log/messages には、マルチユーザーモードに入って syslogd が
起動した時に、カーネルのメッセージバッファを読んで書き込まれます。
その時点でバッファがあふれてしまっているので、これも dmesg と同様に
先頭部分が記録されないわけです。
このバッファのサイズは /usr/src/sys/sys/msgbuf.h で
#define MSGBUF_SIZE 8192
と指定されています。
バッファを増やすには、MSGBUF_SIZE というオプションを指定して
カーネルの再構築をします。LINTによると、
# Size of the kernel message buffer. Should be N * pagesize.
options "MSGBUF_SIZE=40960"
のように指定します。この場合はデフォルトの 5倍の容量になるわけです。
i386アーキテクチャではページサイズは普通は 4096 バイトとなっています
ので、4096の倍数で指定してください。
カーネルの再構築の方法は
<URL:http://www.jp.freebsd.org/www.freebsd.org/ja/handbook/kernelconfig-building.html>
を参照してください。
なお、MSGBUF_SIZE が使えるのは 2.2.7 以降のバージョンです。
管理番号 1332 (新規)
更新履歴
Q. ThinkPad 535E 上で、`rio' ( DiAMOND 社製 MP3 player Rio PMP300 用
ファイル転送プログラム) を使おうとしたところ、
device not found
と言われ、通信できません
A. rio はパラレルポートを使って通信するのですが、この時に base IO port を
直接操作します。rio は /dev/lpt0 などを使うようには作られていません。
ThinkPad 535E の lpt0 の base IO port は通常の PC の base IO port
と異り、『0x3bc』が base IO port 番号です。したがって、
rio -p 0x3bc -d
のように、IO port 番号を指定しなくてはいけません。
IO port の情報は、ブート時に出力されるメッセージを見る([管理番号 145])
ことでわかります。
たとえば私のマシンの場合、
May 11 22:09:41 myname /kernel: lpt0 at 0x3bc-0x3c3 irq 7 onisa
=====
とありますので、0x3bc であることが判ります。同様にすれば、他の機
種の場合も対応できるはずです。