diff options
Diffstat (limited to 'meta/packages/udev/files/mount.sh')
-rw-r--r-- | meta/packages/udev/files/mount.sh | 13 |
1 files changed, 7 insertions, 6 deletions
diff --git a/meta/packages/udev/files/mount.sh b/meta/packages/udev/files/mount.sh index 48c7844690..160acbfdec 100644 --- a/meta/packages/udev/files/mount.sh +++ b/meta/packages/udev/files/mount.sh | |||
@@ -1,16 +1,15 @@ | |||
1 | #!/bin/sh | 1 | #!/bin/sh |
2 | # | 2 | # |
3 | # Called from udev | 3 | # Called from udev |
4 | # Attemp to mount any added block devices | ||
5 | # and remove any removed devices | ||
6 | # | 4 | # |
5 | # Attempt to mount any added block devices and umount any removed devices | ||
6 | |||
7 | 7 | ||
8 | MOUNT="/bin/mount" | 8 | MOUNT="/bin/mount" |
9 | PMOUNT="/usr/bin/pmount" | 9 | PMOUNT="/usr/bin/pmount" |
10 | UMOUNT="/bin/umount" | 10 | UMOUNT="/bin/umount" |
11 | name="`basename "$DEVNAME"`" | ||
12 | 11 | ||
13 | for line in `cat /etc/udev/mount.blacklist | grep -v ^#` | 12 | for line in `grep -v ^# /etc/udev/mount.blacklist` |
14 | do | 13 | do |
15 | if ( echo "$DEVNAME" | grep -q "$line" ) | 14 | if ( echo "$DEVNAME" | grep -q "$line" ) |
16 | then | 15 | then |
@@ -20,6 +19,8 @@ do | |||
20 | done | 19 | done |
21 | 20 | ||
22 | automount() { | 21 | automount() { |
22 | name="`basename "$DEVNAME"`" | ||
23 | |||
23 | ! test -d "/media/$name" && mkdir -p "/media/$name" | 24 | ! test -d "/media/$name" && mkdir -p "/media/$name" |
24 | 25 | ||
25 | if ! $MOUNT -t auto -o sync $DEVNAME "/media/$name" | 26 | if ! $MOUNT -t auto -o sync $DEVNAME "/media/$name" |
@@ -50,8 +51,7 @@ if [ "$ACTION" = "add" ] && [ -n "$DEVNAME" ]; then | |||
50 | fi | 51 | fi |
51 | 52 | ||
52 | # If the device isn't mounted at this point, it isn't configured in fstab | 53 | # If the device isn't mounted at this point, it isn't configured in fstab |
53 | cat /proc/mounts | awk '{print $1}' | grep -q "^$DEVNAME$" || automount | 54 | grep -q "^$DEVNAME " /proc/mounts || automount |
54 | |||
55 | fi | 55 | fi |
56 | 56 | ||
57 | 57 | ||
@@ -63,5 +63,6 @@ if [ "$ACTION" = "remove" ] && [ -x "$UMOUNT" ] && [ -n "$DEVNAME" ]; then | |||
63 | done | 63 | done |
64 | 64 | ||
65 | # Remove empty directories from auto-mounter | 65 | # Remove empty directories from auto-mounter |
66 | name="`basename "$DEVNAME"`" | ||
66 | test -e "/tmp/.automount-$name" && rm_dir "/media/$name" | 67 | test -e "/tmp/.automount-$name" && rm_dir "/media/$name" |
67 | fi | 68 | fi |