diff options
author | matein4 <matein4@3c298f89-4303-0410-b956-a3cf2f4a3e73> | 2009-01-30 20:48:42 +0000 |
---|---|---|
committer | matein4 <matein4@3c298f89-4303-0410-b956-a3cf2f4a3e73> | 2009-01-30 20:48:42 +0000 |
commit | 8878fc63f14757e5fa42e9c2ae90f43a403a927f (patch) | |
tree | 494a86a8d300bcce4e7c38ccc790dc59991164b1 /package/base-files | |
parent | 176cbd50ea380af4a0fb86c481d6f118dd1b6ece (diff) |
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.
git-svn-id: svn://svn.openwrt.org/openwrt/trunk@14289 3c298f89-4303-0410-b956-a3cf2f4a3e73
Diffstat (limited to 'package/base-files')
5 files changed, 45 insertions, 38 deletions
diff --git a/package/base-files/files/etc/hotplug.d/block/10-mount b/package/base-files/files/etc/hotplug.d/block/10-mount new file mode 100644 index 000000000..b0104ddfd --- /dev/null +++ b/package/base-files/files/etc/hotplug.d/block/10-mount @@ -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 diff --git a/package/base-files/files/etc/hotplug.d/ieee1394/10-ieee1394 b/package/base-files/files/etc/hotplug.d/ieee1394/10-ieee1394 new file mode 100644 index 000000000..7e142a211 --- /dev/null +++ b/package/base-files/files/etc/hotplug.d/ieee1394/10-ieee1394 @@ -0,0 +1,13 @@ +#!/bin/sh + +# Copyright (C) 2009 OpenWrt.org + +case "$ACTION" in + add) + # update LEDs + ;; + remove) + # update LEDs + ;; +esac + diff --git a/package/base-files/files/etc/hotplug.d/usb/10-usb b/package/base-files/files/etc/hotplug.d/usb/10-usb new file mode 100644 index 000000000..7e142a211 --- /dev/null +++ b/package/base-files/files/etc/hotplug.d/usb/10-usb @@ -0,0 +1,13 @@ +#!/bin/sh + +# Copyright (C) 2009 OpenWrt.org + +case "$ACTION" in + add) + # update LEDs + ;; + remove) + # update LEDs + ;; +esac + diff --git a/package/base-files/files/etc/hotplug.d/usb/10-usb-storage b/package/base-files/files/etc/hotplug.d/usb/10-usb-storage deleted file mode 100644 index 14001f6ff..000000000 --- a/package/base-files/files/etc/hotplug.d/usb/10-usb-storage +++ /dev/null @@ -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 - diff --git a/package/base-files/files/sbin/usb-storage b/package/base-files/files/sbin/usb-storage deleted file mode 100755 index e02efa811..000000000 --- a/package/base-files/files/sbin/usb-storage +++ /dev/null @@ -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 |