1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
|
diff -ur usbmount-0.0.14/usbmount usbmount-0.0.14-patched/usbmount
--- usbmount-0.0.14/usbmount 2005-07-08 11:51:02.000000000 -0500
+++ usbmount-0.0.14-patched/usbmount 2006-11-28 09:13:42.000000000 -0600
@@ -11,16 +11,20 @@
# but WITHOUT ANY WARRANTY, to the extent permitted by law; without
# even the implied warranty of MERCHANTABILITY or FITNESS FOR A
# PARTICULAR PURPOSE.
+
+#
+# Changed to support config of logfile and vol_id and creating locks
+# without the use of lockfile-create all for embedded use.
+# Joshua D Henderson <jdhende1@rockwellcollins.com>
#
set -e
exec > /dev/null 2>&1
-
# Log a string via the syslog facility.
log()
{
if test $1 != debug || expr "$VERBOSE" : "[yY]" > /dev/null; then
- logger -p user.$1 -t "usbmount[$$]" -- "$2"
+ echo "usbmount[$$] -- $2" >> $LOGFILE
fi
}
@@ -37,7 +41,7 @@
# Test if /sbin/vol_id is executable.
-test -x /sbin/vol_id || { log err "cannnot execute /sbin/vol_id"; exit 1; }
+test -x $VOLID || { log err "cannnot execute $VOLID"; exit 1; }
# Default values for configuration variables.
MOUNTPOINTS=""
@@ -57,11 +61,11 @@
if test "$1" = add; then
# Acquire lock.
- log debug "trying to acquire lock /var/run/usbmount/.mount.lock"
- lockfile-create --retry 3 /var/run/usbmount/.mount || \
- { log err "cannot acquire lock /var/run/usbmount/.mount.lock"; exit 1; }
- trap '( lockfile-remove /var/run/usbmount/.mount )' 0
- log debug "acquired lock /var/run/usbmount/.mount.lock"
+# log debug "trying to acquire lock /var/lock/usbmount/.mount.lock"
+# lockfile-create --retry 3 /var/lock/usbmount/.mount || \
+# { log err "cannot acquire lock /var/lock/usbmount/.mount.lock"; exit 1; }
+# trap '( lockfile-remove /var/lock/usbmount/.mount )' 0
+# log debug "acquired lock /var/lock/usbmount/.mount.lock"
# Try to read from the device. Some devices need a few seconds
# initialization time before they can be accessed. Give up after
@@ -85,10 +89,10 @@
# Test if the device contains a filesystem. If it doesn't, no
# further action is required, but calling vol_id has the side effect
# that the partition table is read and partition devices are created.
- if /sbin/vol_id "$DEVNAME" | egrep -q '^ID_FS_USAGE=(filesystem|disklabel)$'; then
+ if $VOLID "$DEVNAME" | egrep -q '^ID_FS_USAGE=(filesystem|disklabel)$'; then
log debug "$DEVNAME contains a filesystem or disklabel"
- fstype="`/sbin/vol_id -t \"$DEVNAME\"`"
+ fstype="`$VOLID -t \"$DEVNAME\"`"
log debug "$DEVNAME contains filesystem type $fstype"
# Test if the filesystem type is in the list of filesystem
diff -ur usbmount-0.0.14/usbmount.conf usbmount-0.0.14-patched/usbmount.conf
--- usbmount-0.0.14/usbmount.conf 2005-04-08 09:05:10.000000000 -0500
+++ usbmount-0.0.14-patched/usbmount.conf 2006-11-28 09:14:52.000000000 -0600
@@ -17,7 +17,7 @@
# sure all data is written to the medium before you remove it (e.g. run the #
# "sync" command in a terminal window). Otherwise, you *WILL* lose data! #
#############################################################################
-FILESYSTEMS="ext2 ext3"
+FILESYSTEMS="ext2 ext3 vfat msdos"
# Mount options: Options passed to the mount command with the -o flag.
# WARNING! Removing "sync" from the options is a very bad idea and
@@ -35,3 +35,9 @@
# If set to "yes", more information will be logged via the syslog
# facility.
VERBOSE="no"
+
+# Location of vol_id
+VOLID="/lib/udev/vol_id"
+
+# Location of the log file when verbose is Yes
+LOGFILE="/var/log/usbmount.log"
|