下面是我的hotplug-call的内容,我发现里面挂在位置都是/mnt/usb/sda1,多了个usb,不知道是否是因为这个所以出问题,请楼主帮忙看看
4 Z- I* d% _% U- U# n+ j9 Q+ Z" `* v3 z6 b/ ]: v
#!/bin/sh+ Z8 o8 I, g8 ]. M
4 p: @( R" A& {: n( bmount_dev() {
: b Q; E% `6 w DEVNAME="$(basename $DEVPATH)"
, t! }' d/ _0 b* a$ O+ a1 V0 ] G MOUNT_ROOT="/mnt/usb"5 [: d7 K! J5 G! x
# echo "mount $DEVNAME"8 s+ ?, W1 n; A, X' t# H
# sleep 2
) p }- F& G4 z; z* S! d) o mkdir -p $MOUNT_ROOT/$DEVNAME
2 z+ C& |# R2 D1 u0 l. J& _ if mount /dev/$DEVNAME $MOUNT_ROOT/$DEVNAME || ntfs-3g /dev/$DEVNAME $MO( f* z3 \* j2 c" n* `- p$ g
[ -x $MOUNT_ROOT/$DEVNAME/opt/etc/init ] && $MOUNT_ROOT/$DEVNAME
4 c" ]7 Z$ r; g4 C echo "usb=on" > /proc/ledStatus
- e4 I, T! ]3 h- L3 i( S" L echo 1 > /proc/monitor
" C% e, ]6 |5 T+ E fi
1 A9 \# z3 O4 p" l1 g3 |}
) q$ U$ O( n$ o+ i/ n& _2 i4 a
% C7 Y, S" e. W1 chandle_block() {
' e. _' z$ t0 D, w case $ACTION.$DEVPATH in0 P3 P6 C+ V _2 K \% y
add./block/sd?/sd?1)2 A% c: b2 J/ y
mount_dev
. q7 E; ]: r+ m- q+ Z exit 0 l g3 z! ~( T' f
;;+ @3 H! e9 x7 ]/ |5 u3 X" c+ z
esac. M- @. u& R1 A; p) F) m
}; r6 z% \' w7 w2 ?5 h
5 L. K) I$ M3 w
kill_prgm() {: G4 ]) d: O0 C/ V0 f4 q
count=08 ?4 C! l& ?( g8 g" U) |- x/ v0 Z
while [ $count -lt 5 ]; do
; Y) P p. U5 V# F. d ps | grep $1 | grep -v "grep" 1>/dev/null 2>/dev/null || break
. y6 J( d0 u! G3 X/ _ killall $12 f/ R* @; i( S8 N# w v! \
# echo $1! N% G) C7 z, Z
sleep 3
- X! ]& H* T/ l5 W) U1 n4 E* \/ v count=$(($count+1))$ ?: W- \$ q( \
done
! y( c) y& A( m7 [, O}- P P4 m s8 `1 V" ^6 I0 z
A- |* z( t6 H/ kunmount_dev() {1 ^) C0 h5 M2 q
echo "usb=blinkfast" > /proc/ledStatus2 n# N7 j! i5 p+ o3 b/ o
for prgm in amuled rtorrent screen transmission-daemon; do
1 I' R% o- z* ] kill_prgm $prgm
9 v ~* H' w+ r* R) E* X: y done1 K" K& V. n' A: [
x. v; W' [ G' l. K
for loop in $(grep "loop" /proc/swaps | cut -d ' ' -f1); do
. L5 v' G F2 g+ H9 Y1 L" z if ! swapoff $loop || ! losetup -d $loop; then& @! n# i# o! `
echo "usb=on" > /proc/ledStatus
5 O; y/ i4 g2 t. `8 V5 r; A$ b exit 1
5 S( x4 i3 p5 ?3 u( J3 A fi
" E) d, D! _/ o# H5 Q. T done
( t/ u9 L4 n& ]% n( g# n% a4 A
0 j7 S& K" Y6 F$ G2 t echo 1 > /proc/monitor
1 I' f9 T$ T/ W- f2 H0 U echo "usb=off" > /proc/ledStatus& L2 B8 P* a2 v, B/ _/ |' |
}! S4 ]+ q+ s8 h
' `' Y: R; r$ Z/ H* ^
handle_button() {
4 I3 K& D3 N V7 N if [ "$ACTION" = "pressed" ]; then
/ m" x i9 B# h( ^! o case $BUTTON in! E4 B" j; \0 f% j" b5 o, Q" _
wps) unmount_dev;;# Q1 b4 K ?9 O6 _4 `0 r( j
wlan) echo "x" > /proc/wlanStatus && echo 1 > /proc/moni
9 q. ]2 A* x+ G esac3 p3 ]: d j4 ^
fi. k' a; Z2 {% Q# I
exit 0# L# p5 e2 F* F" R* w
}
" V M6 [6 l8 w) J/ z5 n
8 C# R6 N8 t8 Z; _9 W& b r2 ]if [ -x /opt/sbin/hotplug ] && /opt/sbin/hotplug $@; then
' B. ~5 F" }% A3 }, i7 M exit 0
. F" y) M0 y- G" c' }. [; wfi9 {* J9 V( g8 F& y2 }
#echo $@,$SUBSYSTEM,$ACTION,$PRODUCT,$TYPE,$INTERFACE,$DEVPATH >> /tmp/hotlog
* x6 P3 {. k: l `6 ~( R1 |+ z, z1 B3 N" m. z; g
case $1 in% i2 p) b' G$ [& _" I, U$ w
block) handle_block;;# o& ^8 d# |; U& m
button) handle_button;;& E8 i2 T( k0 B3 g7 D* A
esac- \, r" y" f2 Z( g7 K" K
' D' H5 h' Q' z; M
/sbin/hotplug $@ |