Linuxのログ監視「Logwatch」導入

今更ですけどメールサーバーの建て方の記事、内容書きかけで投稿していたようで我ながらびっくりしました。もう覚えてない…。

本日紹介するのはLogwatchというソフト。Linuxのログを読みやすい形にまとめてくれる便利ソフトです。

こちらのソフトはPerlで作られていますので、インストールしていない場合は入れておきましょう。

後は

sudo apt-get install logwatch

でインストールは終了です。

そのままでも使えますが、設定を少し変更しておきましょう。設定ファイルは/usr/share/logwatch/default.conf/logwatch.confに保存されています。

#ログが保存されているディレクトリ
LogDir = /var/log
#アーカイブされたログも含めるかどうか
Archives = Yes
#レポートの日付範囲
Range = Yesterday
#ログの詳細度、Low (=0), Med (=5), High (=10)
Detail = High
#チェックの対象となるサービス
Service = All

こんな感じ。必要に応じてメーラーとかも設定してくださいね。

ログを解析する範囲ですが、私はもともと毎日お昼頃に死活確認のメールを送らせていたので、それを置き換えることにしました。

Logwatchは非常駐のソフトなので、使うときは

logwatch

とコマンドを打ち込むことで実行出来ます。

これだけで解析を表示してくれるのですが、これをメールで送らせてみましょう。

logwatch –mailto [メールアドレス]

とすることで先ほど表示された解析結果をメールで送信してくれます。

後はこれをcronにでも登録してあげれば、毎日ログを簡単に確認できるようになりますね。

Linuxで対話的にホットスワップするスクリプト作った

私の構築しているサーバーはホットスワップベイが付いているのですが、Linuxでホットスワップするのはコマンド打たないといけなくてちょっと面倒。

というわけで、対話的にホットスワップできるスクリプトを組んでみました。

このスクリプトでアンマウントとecho 1の書き込みをワンタッチで行うことが出来ます。ついでにsyncもさせています。


#!/bin/sh

while true;do
list=`df -h |grep /dev/sd`
echo "HDD一覧を表示します。"
echo "$list\n"

while true;do
echo "HDD名を入力 /dev/sd 例)a"
read name

if [ $name ] ; then
break
fi
done

echo "/dev/sd$nameでよろしいですか? y/n"
read answer

case $answer in
y)
hdd=sd$name
dev=/sys/block/$hdd/device/delete
if [ ! -e $dev ] ; then
echo "/dev/sd$nameが存在しません。"
else
echo "処理を開始します。"
break
fi
;;
n)
echo "最初からやり直します。"
;;
*)
echo "入力ミスです。"
;;
esac
done

echo "sync中..."
sync
sync
sync
sleep 3s

echo "/dev/$hddをumount..."
sudo umount /dev/$hdd*

if [ $(mount |grep $hdd |wc -l) -gt 0 ] ; then
echo "umountに失敗しました。"
exit 1
else
echo "正常にunmountしました。"
echo "/dev/$hddの削除..."
echo "1" > $dev

if [ ! -e $dev ] ; then
echo "/dev/$hddを削除しました。"
else
echo "削除に失敗しました。"
fi
fi

コピーしたらタグとか全部消えてしまった…。

シェルスクリプトもド素人なのでソースがおかしければご指摘お願い致します。

私の環境ではこれで一応問題なくホットスワップできているようです。

もし参考になれば使ってあげて下さい。

 

ただ、ディスクを抜き差しするとステータスが変わった的なメッセージが表示されるのですがこれは正常なんですかね…?


Linuxのシステム監視「nmon」

どうもお久しぶりです。

今回はLinux用のシステムモニターのご紹介。
サーバーを監視するツールとしては、ブラウザ上で確認できるzabbixやmonitorixが便利ですが、今回はコンソール上で動くシステムモニター「nmon」の紹介です。

インストールは非常に簡単。
Ubuntuをお使いであれば

sudo apt-get install nmon

でサクッと導入することが可能です。

特に設定は必要ありません。

起動するときはコンソール上で

nmon

と入力するだけです。

nmon
起動した時の画面がこちら。

説明に書いてある通り、各キーを押すと対応した情報を表示してくれます。
各情報はデフォルトでは2秒ごとにアップデートされるようになっていますが、+-キーで増減させることも出来ます。

私がいつも使っている情報は、c m d nの4つです。
CPUの使用率、メモリの使用率、ディスクのアクセス状況、ネットワークの通信の状況を確認することが出来ます。

nmon2
こんな感じ。
グラフィカルに確認することが出来てわかりやすく、非常にカッコイイです。

tでプロセスごとのCPU利用率を確認し、高い順で確認することも出来ます。

終了したいときはqを押すだけ。

導入が簡単でかつグラフィカルにわかりやすく情報を確認できるお手軽なシステムモニターではないでしょうか。
みなさんも是非使ってみてください!