m********r 发帖数: 334 | 1 配置内核的时候加了udev,在 /etc/udev/rules.d 目录下创建文件 10_usbkey.rules,
其内容如下
KERNEL=="sda1", SUBSYSTEM=="block", RUN+="/root/usbmount.sh"
然后, 在 /root 目录中创建文件 usbmount.sh, 其内容为
#!/bin/bash
LOG=/var/log/usb-hotplug.log
lap=$(date)
echo "$lap: $DEVPATH requesting $ACTION" >> $LOG
if [ $ACTION == "add" ]
then
mount -t vfat -o iocharset=cp936 \
/dev/sda1 /mnt/usbkey
elif [ $ACTION == "remove" ]
then
umount -l /mnt/usbkey
fi
usbmount.sh为可执行,但是从来没有被udev执行过,ps查看发现有udevd,搞了一天了
也没找到原因,请高手指点一二 | Z**0 发帖数: 1119 | 2 奇怪,你弄这个干什么?系统本身自带的。
你折腾gentoo?就是gentoo下,也不需要你做的。 | m********r 发帖数: 334 | 3 嵌入式,大佬
【在 Z**0 的大作中提到】 : 奇怪,你弄这个干什么?系统本身自带的。 : 你折腾gentoo?就是gentoo下,也不需要你做的。
| i*****f 发帖数: 578 | 4 你可以设置udev.conf里log的level为debug,然后在syslog里查看是否有udev的事件。
如果连add事件都没有,就不是你的rule和script的问题。
另外,看看这个在热插拔的情况下是否work,在系统restart下是否work。
我有个设备,udev在系统启动的时候没有event,但是在hot plug时就有event。不过也
有可能是具体到我这个设备的问题。
仅供参考。
,
【在 m********r 的大作中提到】 : 配置内核的时候加了udev,在 /etc/udev/rules.d 目录下创建文件 10_usbkey.rules, : 其内容如下 : KERNEL=="sda1", SUBSYSTEM=="block", RUN+="/root/usbmount.sh" : 然后, 在 /root 目录中创建文件 usbmount.sh, 其内容为 : #!/bin/bash : LOG=/var/log/usb-hotplug.log : lap=$(date) : echo "$lap: $DEVPATH requesting $ACTION" >> $LOG : if [ $ACTION == "add" ] : then
|
|