summaryrefslogtreecommitdiffstats
path: root/abs/core-testing/udev/mount-usb
diff options
context:
space:
mode:
authorCecil Hugh Watson <knoppmyth@gmail.com>2009-08-23 02:05:40 (GMT)
committerCecil Hugh Watson <knoppmyth@gmail.com>2009-08-23 02:05:40 (GMT)
commit0a8879b136ff2134bcaa608ab8d02ec50efbc23a (patch)
treefdc7a145e62c711e1337fb7b9c3f94d15a224627 /abs/core-testing/udev/mount-usb
parent18ae17328b876ce477b2f697c49da16f150f36c6 (diff)
downloadlinhes_pkgbuild-0a8879b136ff2134bcaa608ab8d02ec50efbc23a.zip
linhes_pkgbuild-0a8879b136ff2134bcaa608ab8d02ec50efbc23a.tar.gz
linhes_pkgbuild-0a8879b136ff2134bcaa608ab8d02ec50efbc23a.tar.bz2
udev:Let's make automounting just work for USB storage devices.
Diffstat (limited to 'abs/core-testing/udev/mount-usb')
-rw-r--r--abs/core-testing/udev/mount-usb51
1 files changed, 51 insertions, 0 deletions
diff --git a/abs/core-testing/udev/mount-usb b/abs/core-testing/udev/mount-usb
new file mode 100644
index 0000000..2d3b3f5
--- /dev/null
+++ b/abs/core-testing/udev/mount-usb
@@ -0,0 +1,51 @@
+#!/bin/sh
+
+
+DIR=/media
+DEVICE=$2
+LABEL=`/lib/udev/vol_id -L /dev/$DEVICE`
+FS=`/lib/udev/vol_id -t /dev/$DEVICE`
+
+
+mount_device () {
+ if [ "$LABEL" == "" ];
+ then
+ mkdir -p $DIR/usb-$DEVICE
+ case $FS in
+ vfat) /bin/mount -t vfat -o rw,noauto,flush,quiet,nodev,nosuid,noexec,noatime,dmask=000,fmask=111 /dev/$DEVICE $DIR/usb-$DEVICE
+ ;;
+ *) /bin/mount -t auto -o rw,noauto,sync,dirsync,noexec,nodev,noatime /dev/$DEVICE $DIR/usb-$DEVICE
+ ;;
+ esac
+ else
+ mkdir -p $DIR/$LABEL
+ echo $LABEL >$DIR/.$DEVICE
+ case $FS in
+ vfat) /bin/mount -t vfat -o rw,noauto,flush,quiet,nodev,nosuid,noexec,noatime,dmask=000,fmask=111 /dev/$DEVICE $DIR/$LABEL
+ ;;
+ *) /bin/mount -t auto -o rw,noauto,sync,dirsync,noexec,nodev,noatime /dev/$DEVICE $DIR/$LABEL
+ ;;
+ esac
+ fi
+}
+
+umount_device () {
+ if [ -e $DIR/usb-$DEVICE ];
+ then
+ umount -l $DIR/usb-$DEVICE
+ rmdir $DIR/usb-$DEVICE;
+ else
+ ULABEL=`cat $DIR/.$DEVICE`
+ umount -l $DIR/$ULABEL
+ rmdir $DIR/$ULABEL
+ rm $DIR/.$DEVICE;
+ fi
+}
+
+case $1 in
+ mount) mount_device
+ ;;
+ umount) umount_device
+ ;;
+ *) echo "Usage: mount-usb mount/umount sdxY"
+esac