openwrt hotplug mount script enhanced

最近在rg100a上折腾openwrt… 参考dev上的信息,强化了下自动mount的脚本 顺便又学习了下shell script,嗯,玩中学,学中玩^^ /etc/hotplug.d/block/10-mount

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
#!/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
# vfat & ntfs-3g check
if [ `which fdisk` ]; then
isntfs=`fdisk -l grep $device grep NTFS`
isvfat=`fdisk -l grep $device grep FAT`
isfuse=`lsmod grep fuse`
isntfs3g=`which ntfs-3g`
else
isntfs=""
isvfat=""
fi

# mount with ntfs-3g if possible, else with default mount
if [ "$isntfs" -a "$isfuse" -a "$isntfs3g" ]; then
ntfs-3g -o nls=utf8 /dev/$device /mnt/$device
elif [ "$isvfat" ]; then
mount -o iocharset=utf8 /dev/$device /mnt/$device
else
mount /dev/$device /mnt/$device
fi
;;
remove)
umount /dev/$device
;;
esac

fi