「HDDが設定温度に達したらシャットダウンするシェルスクリプト」の版間の差分
提供: Wikiducca
(大松「ブロックされないから荒らしやすいンゴねえ」) |
(The Pioneer (ノート) による版 4379 を取り消し) |
||
(5人の利用者による、間の10版が非表示) | |||
行1: | 行1: | ||
− | + | == 概要 == | |
設定温度(ここでは60度)に達したら、設定したメールアドレス(ここでは [email protected]) に1分後に落としますよ。とメールしてからシャットダウンするもの。 | 設定温度(ここでは60度)に達したら、設定したメールアドレス(ここでは [email protected]) に1分後に落としますよ。とメールしてからシャットダウンするもの。 | ||
2019年1月9日 (水) 07:58時点における最新版
概要
設定温度(ここでは60度)に達したら、設定したメールアドレス(ここでは [email protected]) に1分後に落としますよ。とメールしてからシャットダウンするもの。
経緯
2011の夏、電力不足でエアコンとかガンガン使うと白い目で見られるので。書いた。
うちの自宅サーバなぞ落ちても誰もこまらないし、主要なもの(この wiki 含め)は大体クラウドに移したので。
もういらないシェルスクリプトだけどせっかく書いたので。
※hddtemp のインストールが必要。
ディレクトリを作成&移動
# mkdir /usr/local/script/tempChecker/ # cd /usr/local/script/tempChecker/
書く
vi tempChecker.sh
#!/bin/sh LOG="/usr/local/script/tempChecker/Logs/$(date +%y%m%d).log" Message="System will shutdown after 1 minutes." MailSubject="tempCheck Failed! [`date \"+%Y/%m/%d %H:%M:%S\"`]" MailTo="[email protected]" date "+%y%m%d %H:%M:%S" >> ${LOG} for x in /dev/sda /dev/sdb do TEMP=$(/usr/local/sbin/hddtemp $x |awk -F ": " '{print $3}' |awk '{print $1}') if [ $TEMP -gt 60 ] then echo "${x}:${TEMP}:FAILED!! $Message" >> ${LOG} # mail alert. echo "$Message" | mail -s "$MailSubject" $MailTo echo "----------" >> ${LOG} # shutdown shutdown -h +1 exit 1 else echo "${x}:${TEMP}:OK" >> ${LOG} fi done echo "----------" >> ${LOG} # EOF
cron 登録
5分おきにチェックする。
# HDD tempChecker */5 * * * * /usr/local/script/tempChecker/tempChecker.sh
以上。