有一個usb外置的硬盤,想插電直接可以linux掛載,關電linux直接umount, 查了一下沒有一個比較合適的解決方案。於是自己寫了一腳本,然後使用crontab 每10秒運行一次。
計劃任務,增加每分鐘的任務
crontab -e
#增加每分鐘的任務
* * * * * /etc/misc/usb_auto_check.sh &>>/var/log/usb_auto_check.log 2>&1
usb_auto_check.sh:
#!/bin/bash
#
mountpoint="/hdd8t"
devuuid="30ea7272-4283-4def-9ab4-69b204b9c09c"
step=10 #間隔的秒數,不能大於60
for (( i = 0; i < 60; i=(i+step) )); do
ismount=`/usr/bin/mount | grep "$mountpoint" | wc -l`
isdevok=`/usr/sbin/blkid | grep "$devuuid" | wc -l`
# echo "ismount${ismount}isdevok${isdevok}xxxx"
if [ "$ismount" == "0" ]; then
if [ "$isdevok" == "1" ]; then
#not mount , but dev is ok, mount it
/usr/bin/mount --uuid "$devuuid" "$mountpoint"
echo `date` "mount --uuid $devuuid $mountpoint"
fi
else
if [ "$isdevok" == "0" ]; then
/usr/bin/umount "$mountpoint"
echo `date` "umount $mountpoint"
fi
fi
sleep $step
done
exit 0