HDD温度監視
HDDがかなり発熱するため、簡易的なHDD温度監視スクリプトを書いてcronで回すことにする。
シェルスクリプト hddtemp.sh
#!/bin/sh DATE=`date "+%Y/%m/%d"` TIME=`date "+%H:%M:%S"` TEMP=`/usr/local/sbin/smartctl -a /dev/ad4 | grep 194 | awk '{print $10}'` OUTPUT='"'$DATE'","'$TIME'","'$TEMP'"\n' echo $OUTPUT >> /usr/home/hoge/hddtemp.csv
当初の hddtemp.sh だと温度数値が時々狂うので補正する。
#!/bin/sh DATE=`date "+%Y/%m/%d"` TIME=`date "+%H:%M:%S"` TEMP=`/usr/local/sbin/smartctl -a /dev/ad4 | grep 194 | awk '{print $10}'` # $TEMPの文字数が2文字超の時は下2桁のみ抽出 if [ ${#TEMP} -gt 2 ] ; then TEMP=`echo $TEMP | cut -d " " -f 2` fi OUTPUT='"'$DATE'","'$TIME'","'$TEMP'"\n' echo $OUTPUT >> /root/hddtemp.csv exit 0;
同様の結果が得られるが、スクリプトの一部を変更
#!/bin/sh DATE=`date "+%Y/%m/%d"` TIME=`date "+%H:%M:%S"` TEMP=`/usr/local/sbin/smartctl -a /dev/ad4 | grep 194 | awk '{print $10}'` # $TEMPの文字数が2文字超の時は下2桁のみ抽出 if [ ${#TEMP} -gt 2 ] ; then LEN=`expr ${#TEMP} - 1` TEMP=`echo $TEMP | cut -b $LEN-` fi OUTPUT='"'$DATE'","'$TIME'","'$TEMP'"\r' echo $OUTPUT >> /root/hddtemp.csv exit 0;