- 论坛徽章:
- 0
|
其实我使用 FreeBSD 也有比较长时间了,是从4.7 版开始的,但一直以来
没碰到什么问题,所以也就没到版里提问或帮别人解答问题。最近由于单位
让我改用笔记本电脑,上面没有 PS2 口,只能用 USB 鼠标,有些经验想
与大家分享,希望后来者不用再走弯路。
我在 Google 找 "FreeBSD USB 鼠标" 找到一些介绍 "在FreeBSD 4.0
下安装USB鼠标支持" 的文章,内容很好但已过时,如果照搬会导致找不到
鼠标。
FreeBSD 6.0 已经内置了 USB 驱动,至少我在笔记本电脑上装好后,可以
运行 usbdevs 来查看 USB 设备。我们要做的不是编译内核,而是做好配置。
1) 首先,你必须修改 /etc/rc.conf ,保证里面有以下内容:
moused_enable="NO"
moused_flags="/dev/ums0"
usbd_enable="YES"
usbd_flags=""
2) 其次,建议你修改 /etc/devd.conf,用 vi 搜索内容 moused,换为
# The entry below starts moused when a mouse is plugged in. Moused
# stops automatically (actually it bombs :) when the device disappears.
attach 100 {
device-name "ums[0-9]+";
# action "/etc/rc.d/moused start $device-name";
action "/usr/sbin/moused -p /dev/ums0 -t auto -I /var/run/moused.pid";
};
detach 100 {
device-name "ums[0-9]+";
# action "/etc/rc.d/moused start $device-name";
action "echo '(unplug)' > /var/run/moused.pid";
};
3) 或者,你也可以改 /etc/usbd.conf,用 vi 定位到文件末尾,换为
# The fallthrough entry: Nothing is specified, nothing is done. And it isn't
# necessary at all :-). Just for pretty printing in debugging mode.
#
# device "Mouse"
# devname "ums[0-9]+"
# attach "/usr/sbin/moused -p /dev/${DEVNAME} -t auto -I /var/run/moused.$
{DEVNAME}.pid"
# detach "echo '(unplug)' > /var/run/moused.${DEVNAME}.pid"
device "USB device"
4) 之所以把第三部分的 Mouse 内容用 # 号注释,是因为 devd.conf 和
usbd.conf 两者只修改一个就可以了,两个都改反而是不正确的。如果你
希望由 usbd 来驱动 Mouse,只要把对应的注释去掉,并把 devd 里相关
部分加上注释即可。我个人建议用 devd,因为经我测试两者都可以检测
attach 活动,但 usbd 并不能很好地检测 detach 活动,因此不能正确
地做出反应(修改 moused.pid)。
或许高手们对于使用 usbd.conf 有更好的方案,请多指教。另外,我家有
FreeBSD 4.10/4.11 和 5.3/5.4 的光盘,以前装过但是没测过 USB Mouse,
不过按道理说解决问题的大致思路也是类似的。
5) 为了方便查看驱动加载信息,我定义了一些 alias,修改 .cshrc 即可。
alias al alias
alias cl clear
alias pc "echo ':: /dev/ums0 depends on moused in /etc/rc.conf & /etc/devd.conf'"
alias pd "echo ' cat /var/run/moused.pid';echo -n ' ';cat /var/run/moused.pid"
alias pm "ps -ax | grep moused | grep -v grep"
[ 本帖最后由 wwashington 于 2005-12-14 00:15 编辑 ] |
|