1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071 |
- udev can provide all the values that usbmount determined using the
- blkid binary. This patch drops use of blkid in favor of using the
- environment variables set by udev. Thus it removes the dependency
- on blkid from usbmount.
- Signed-off-by: Sven Neumann <s.neumann@raumfeld.com>
- --- usbmount-0.0.22/usbmount.orig 2013-06-18 14:44:40.143096147 +0200
- +++ usbmount-0.0.22/usbmount 2013-06-19 16:13:09.882434896 +0200
- @@ -59,11 +59,6 @@
- exit 0
- fi
-
- -if [ ! -x /sbin/blkid ]; then
- - log err "cannot execute /sbin/blkid"
- - exit 1
- -fi
- -
- # Per Policy 9.3.2, directories under /var/run have to be created
- # after every reboot.
- if [ ! -e /var/run/usbmount ]; then
- @@ -83,15 +78,7 @@
- trap '( lockfile-remove /var/run/usbmount/.mount )' 0
- log debug "acquired lock /var/run/usbmount/.mount.lock"
-
- - # Grab device information from device and "divide it"
- - # FIXME: improvement: implement mounting by label (notice that labels
- - # can contain spaces, which makes things a little bit less comfortable).
- - DEVINFO=$(/sbin/blkid -p $DEVNAME)
- - FSTYPE=$(echo "$DEVINFO" | sed 's/.*[[:blank:]]TYPE="\([^"]*\)".*/\1/g; s/[[:blank:]]*//g;')
- - UUID=$(echo "$DEVINFO" | sed 's/.*[[:blank:]]UUID="\([^"]*\)".*/\1/g; s/[[:blank:]]*//g;')
- - USAGE=$(echo "$DEVINFO" | sed 's/.*[[:blank:]]USAGE="\([^"]*\)".*/\1/g; s/[[:blank:]]*//g;')
- -
- - if ! echo $USAGE | egrep -q "(filesystem|disklabel)"; then
- + if ! echo $ID_FS_USAGE | egrep -q "(filesystem|disklabel)"; then
- log info "$DEVNAME does not contain a filesystem or disklabel"
- exit 1
- fi
- @@ -101,14 +88,14 @@
- log info "executing command: mount $DEVNAME"
- mount $DEVNAME || log err "mount by DEVNAME with $DEVNAME wasn't successful; return code $?"
-
- - elif grep -q "^[[:blank:]]*UUID=$UUID" /etc/fstab; then
- - log info "executing command: mount -U $UUID"
- - mount -U $UUID || log err "mount by UUID with $UUID wasn't successful; return code $?"
- + elif grep -q "^[[:blank:]]*UUID=$ID_FS_UUID" /etc/fstab; then
- + log info "executing command: mount -U $ID_FS_UUID"
- + mount -U $ID_FS_UUID || log err "mount by UUID with $ID_FS_UUID wasn't successful; return code $?"
-
- else
- - log debug "$DEVNAME contains filesystem type $FSTYPE"
- + log debug "$DEVNAME contains filesystem type $ID_FS_TYPE"
-
- - fstype=$FSTYPE
- + fstype=$ID_FS_TYPE
- # Test if the filesystem type is in the list of filesystem
- # types to mount.
- if in_list "$fstype" "$FILESYSTEMS"; then
- @@ -176,11 +163,13 @@
-
- # Run hook scripts; ignore errors.
- export UM_DEVICE="$DEVNAME"
- + export UM_UUID="$ID_FS_UUID"
- export UM_MOUNTPOINT="$mountpoint"
- export UM_FILESYSTEM="$fstype"
- export UM_MOUNTOPTIONS="$options"
- export UM_VENDOR="$vendor"
- export UM_MODEL="$model"
- + export UM_LABEL="$ID_FS_LABEL"
- log info "executing command: run-parts /etc/usbmount/mount.d"
- run-parts /etc/usbmount/mount.d || :
- else
|