下面是我的hotplug-call的内容,我发现里面挂在位置都是/mnt/usb/sda1,多了个usb,不知道是否是因为这个所以出问题,请楼主帮忙看看. O ?; t7 [4 W7 o9 y2 k
* l; v! d- C3 z: d8 f
#!/bin/sh
# g7 n; K$ B3 d: N$ _% c1 u( U3 I- X" E0 z+ s9 i; h7 t
mount_dev() {
; `! s' k! I5 v, ]8 ^ DEVNAME="$(basename $DEVPATH)"
, f$ Y. U: E" c; [8 F, e2 ~& m MOUNT_ROOT="/mnt/usb"
* G/ b2 \/ O1 |, A t c# echo "mount $DEVNAME"
1 @# a2 A0 v" u# sleep 2
; ~ P" o) |: p( J, l mkdir -p $MOUNT_ROOT/$DEVNAME
- p5 k @5 w; R if mount /dev/$DEVNAME $MOUNT_ROOT/$DEVNAME || ntfs-3g /dev/$DEVNAME $MO
0 ^/ P4 _2 S `0 p [ -x $MOUNT_ROOT/$DEVNAME/opt/etc/init ] && $MOUNT_ROOT/$DEVNAME5 Z' x& W7 `. U) ?: @0 _
echo "usb=on" > /proc/ledStatus' G% d( D* g3 s6 `: i; H$ q0 M0 }
echo 1 > /proc/monitor
P! c7 ], C# y2 ? fi$ j9 Q9 e$ d' ]6 ^
}) \1 } M9 P! l/ ]; a% s' F
4 s0 p) L' b9 mhandle_block() {
( r. {! B; w# s* l, ? case $ACTION.$DEVPATH in
( Q( ?. s8 J! f6 v add./block/sd?/sd?1)
( R: p7 \! m1 t! i2 ^' a( z mount_dev
; k- i: O( F& {3 w- V% P exit 0) ~; s8 I, j) i1 B3 j
;;6 b* |% d% M' ?* d1 d# X
esac
4 C1 m% L6 O6 Y! e}
" z! M) E2 ?$ \* |0 M1 a, G2 b+ `9 s, {8 l9 _2 ^* R
kill_prgm() {- ]# e6 K# Z( ]9 Q1 @6 o1 E' D
count=0
- S, S% h" k6 N while [ $count -lt 5 ]; do
, A( f5 }: c. m3 F, H ps | grep $1 | grep -v "grep" 1>/dev/null 2>/dev/null || break Q6 o, G& N* a, Q8 j( M# |! G
killall $1
3 x, Y* s! V' F! P g) l5 ^8 k# echo $1# Z. O2 K4 b6 V3 v& F3 k
sleep 3
l+ T; K+ N7 A# V count=$(($count+1))3 U1 S( y% m8 t! j0 N& H! s) w
done
~4 A7 S% x. G$ g5 U2 t" j. G}
; J4 k2 [0 Z" ^: t$ S* e7 p5 X/ f1 o+ [' j3 O$ c0 y. b& b
unmount_dev() {% i G' O, @3 g% v7 e& ]
echo "usb=blinkfast" > /proc/ledStatus; v- V( f# N# R! j# z5 G/ k
for prgm in amuled rtorrent screen transmission-daemon; do/ p) u# A6 b9 D8 E0 e
kill_prgm $prgm
5 J& {6 f' c, F6 Q' ^0 k done3 N9 e( k2 B) Q8 i7 g# p
9 D* H2 z9 Z# g1 q$ W) E& t
for loop in $(grep "loop" /proc/swaps | cut -d ' ' -f1); do
5 u( J& R; ^7 V% f if ! swapoff $loop || ! losetup -d $loop; then
/ ~! V" @8 e" M echo "usb=on" > /proc/ledStatus- }+ x: n( [- w! g
exit 12 u C0 }3 u/ S/ U" |4 e/ e, j
fi
5 u! H+ ^0 J7 F done
, F" w- c6 ^& n% A& C
6 P, d( S8 B c' z' x6 l9 i echo 1 > /proc/monitor
3 }+ s& T# g0 h% o; H. {7 |% V- d5 F/ | echo "usb=off" > /proc/ledStatus' |1 R2 X" z; C/ P
}& p; k1 |" ^* ?7 J' y( V
/ S0 ?! l0 H; o! x0 K
handle_button() {( ]& z, ?( u6 o4 Q9 d( C+ `
if [ "$ACTION" = "pressed" ]; then
$ g- t! H- |5 X6 X case $BUTTON in
2 E$ n) |3 g1 s wps) unmount_dev;; A9 t$ Z) e2 P- u
wlan) echo "x" > /proc/wlanStatus && echo 1 > /proc/moni; u9 d ?" ?7 Y8 \$ T) a: _, D
esac: X8 T9 k8 p/ `# o& c* y
fi. r5 C/ P) s' o5 H Q! E
exit 0
( A: k# t) `6 J& l* t, G& g}& \1 j4 V9 e. A5 `" C* z: I0 d
% V2 U& I w6 N, u& V7 y7 s% F Y( P
if [ -x /opt/sbin/hotplug ] && /opt/sbin/hotplug $@; then
, r1 s) W$ \$ j+ k- k: R: W0 G exit 0
l& N9 f- j* G' c! q4 C( @) {# ^3 I2 @fi3 K3 J4 F, I3 G% R
#echo $@,$SUBSYSTEM,$ACTION,$PRODUCT,$TYPE,$INTERFACE,$DEVPATH >> /tmp/hotlog
9 ?8 ?5 T% ]8 d$ q( A1 N' A
5 `3 M0 A, u, ~8 x ccase $1 in* q% B7 f& X( f6 I
block) handle_block;;( i: g g7 \9 [+ M |
button) handle_button;;
9 I0 r2 @$ `: L- u: X1 m* Sesac
4 j8 m, r% v! {
1 I' z6 U- ?' B1 D- D/sbin/hotplug $@ |