DEV=/dev/sdb2
MNT=/media/esata
-DELAY=3
+DELAY=5
+SCSIDEV=1 # This can change based on OS, etc.
registered() {
if [ -b "$DEV" ]; then
doregister() {
registered && return 0
[ -n "$VERBOSE" ] && echo "register SATA device"
- scsiadd -a 1 0 0 0 >/dev/null || return 1
+ scsiadd -a $SCSIDEV 0 0 0 >/dev/null || return 1
sleep $DELAY
registered || return 1
[ -n "$VERBOSE" ] && echo "register ok"
dounregister() {
registered || return 0
[ -n "$VERBOSE" ] && echo "unregister SATA device"
- scsiadd -r 1 0 0 0 >/dev/null || return 1
+ scsiadd -r $SCSIDEV 0 0 0 >/dev/null || return 1
sleep $DELAY
registered && return 1
[ -n "$VERBOSE" ] && echo "unregister ok"
}
doumount() {
- mounted || return 0
- [ -n "$VERBOSE" ] && echo "unmount SATA $DEV"
- umount "$MNT" || return 1
- mounted && return 1
- [ -n "$VERBOSE" ] && echo "unmount ok"
+ if mounted; then
+ [ -n "$VERBOSE" ] && echo "unmount SATA $DEV"
+ umount "$MNT" || return 1
+ mounted && return 1
+ [ -n "$VERBOSE" ] && echo "unmount ok"
+ fi
dounregister || return 1
return 0
}
fi
elif [ "$1" = "status" ]; then
if mounted; then
- echo "esata mounted on $DEV"
+ echo "esata mounted on $MNT"
elif registered; then
echo "esata registered as $DEV but not mounted"
else