Use block events for the mounting/unmounting of external storage devices. This handles both USB and IEEE1394 devices. It removes /sbin/usb-storage in favor of using the block hotplug event. There are dummy scripts to handle the plug in/out of USB and IEEE1394 devices for updating LEDs. Storage devices are mount as a sub-directory under /mnt.
SVN-Revision: 14289
This commit is contained in:
parent
7cb6d9f6a1
commit
58b8cdb5fd
6 changed files with 46 additions and 39 deletions
19
package/base-files/files/etc/hotplug.d/block/10-mount
Normal file
19
package/base-files/files/etc/hotplug.d/block/10-mount
Normal file
|
@ -0,0 +1,19 @@
|
|||
#!/bin/sh
|
||||
|
||||
# Copyright (C) 2009 OpenWrt.org
|
||||
|
||||
blkdev=`dirname $DEVPATH`
|
||||
if [ `basename $blkdev` != "block" ]; then
|
||||
|
||||
device=`basename $DEVPATH`
|
||||
case "$ACTION" in
|
||||
add)
|
||||
mkdir -p /mnt/$device
|
||||
mount /dev/$device /mnt/$device
|
||||
;;
|
||||
remove)
|
||||
umount /dev/$device
|
||||
;;
|
||||
esac
|
||||
|
||||
fi
|
13
package/base-files/files/etc/hotplug.d/ieee1394/10-ieee1394
Normal file
13
package/base-files/files/etc/hotplug.d/ieee1394/10-ieee1394
Normal file
|
@ -0,0 +1,13 @@
|
|||
#!/bin/sh
|
||||
|
||||
# Copyright (C) 2009 OpenWrt.org
|
||||
|
||||
case "$ACTION" in
|
||||
add)
|
||||
# update LEDs
|
||||
;;
|
||||
remove)
|
||||
# update LEDs
|
||||
;;
|
||||
esac
|
||||
|
13
package/base-files/files/etc/hotplug.d/usb/10-usb
Normal file
13
package/base-files/files/etc/hotplug.d/usb/10-usb
Normal file
|
@ -0,0 +1,13 @@
|
|||
#!/bin/sh
|
||||
|
||||
# Copyright (C) 2009 OpenWrt.org
|
||||
|
||||
case "$ACTION" in
|
||||
add)
|
||||
# update LEDs
|
||||
;;
|
||||
remove)
|
||||
# update LEDs
|
||||
;;
|
||||
esac
|
||||
|
|
@ -1,13 +0,0 @@
|
|||
#!/bin/sh
|
||||
|
||||
# Copyright (C) 2006 OpenWrt.org
|
||||
|
||||
case "$ACTION" in
|
||||
add)
|
||||
[ -n "${INTERFACE}" ] &&
|
||||
[ "$(expr substr ${INTERFACE} 1 2)" == "8/" ] && {
|
||||
/sbin/usb-storage &
|
||||
}
|
||||
;;
|
||||
esac
|
||||
|
|
@ -1,25 +0,0 @@
|
|||
#!/bin/sh
|
||||
# Copyright (C) 2007 OpenWrt.org
|
||||
logger "usb device is mass storage"
|
||||
i=0
|
||||
while [ $i -le 10 ]; do
|
||||
logger "waiting on usb drive $i ..."
|
||||
i=$(($i+1))
|
||||
cd /sys${DEVPATH}
|
||||
for blk in `find host* -type d 2>/dev/null`; do
|
||||
[ -d /sys/${DEVPATH}/${blk}/block/ ] && {
|
||||
cd
|
||||
for disc in `find /sys/${DEVPATH}/${blk}/block -name "sd*"`; do
|
||||
sleep 2
|
||||
cd $disc
|
||||
for node in `find . -name "sd*" | cut -d "/" -f2`; do
|
||||
echo "mounting /dev/${node} on /mnt/usbdrive"
|
||||
mkdir -p /mnt/usbdrive
|
||||
mount /dev/${node} /mnt/usbdrive
|
||||
i=20
|
||||
done
|
||||
done
|
||||
}
|
||||
done
|
||||
sleep 1
|
||||
done
|
|
@ -1,6 +1,6 @@
|
|||
$include /etc/hotplug2-common.rules
|
||||
|
||||
SUBSYSTEM ~~ (net|button|usb|platform) {
|
||||
SUBSYSTEM ~~ (net|button|usb|platform|ieee1394|block) {
|
||||
exec /sbin/hotplug-call %SUBSYSTEM%;
|
||||
}
|
||||
|
||||
|
|
Loading…
Reference in a new issue