发表于:2010-1-7 浏览:136 作者: 来源:互联网
关键字:freebsd 6,USB鼠标
描述:FreeBSD6.0已经内置了USB驱动,至少我在笔记本电脑上装好后,可以运行usbdevs来查看USB设备。我们要做的不是编译内核,而是做好配置。1)首先,你必须修改/etc/rc.conf,保证里面有以下内容:moused_enable
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"