3月 312011
 
シェアする

snmpdを起動してMRTGでかっこよくサーバのリソース監視。

ふぇ~い☆ と思っていたら、大量に/var/log/messagesが犯されていた。

Mar 31 13:45:01 trippyboy snmpd[21881]: Connection from UDP: [183.181.164.12]:42303
Mar 31 13:45:01 trippyboy snmpd[21881]: Received SNMP packet(s) from UDP: [183.181.164.12]:42303
Mar 31 13:45:01 trippyboy snmpd[21881]: Connection from UDP: [183.181.164.12]:42303
Mar 31 13:45:04 trippyboy snmpd[21881]: No page line in /proc/stat

No page line in /proc/stat はまぁエラーだけど、別にいらない。
# cat /proc/stat の結果に”page”が含まれて居ない為のエラー。無視OK。

エラーが無くても、この「Connection from」と「Received SNMP packet(s)」はずっと出力される。

/etc/sysconfig/snmpd.options

のバックアップを取り編集する。

ちなみに/etc/sysconfig/snmpd.optionsの中身は以下の通り

# cat /etc/sysconfig/snmpd.options
# snmpd command line options
# OPTIONS="-Lsd -Lf /dev/null -p /var/run/snmpd.pid -a"
#

折角なので上記のオプションを説明しておく。

————————————————–
-Ls FACILITY
Log messages via syslog, using the specified facility (‘d’ for LOG_DAEMON, ‘u’ for LOG_USER, or ‘0’-‘7’ for LOG_LOCAL0  through LOG_LOCAL7).
ログメッセージを指定されたファシリティ(d=LOG_DAEMON,u=LOG_USER, 0-7=LOG_LOCAL0-LOG_LOCAL7)を元にsyslog経由で保存する。

-Lf FILE Log messages to the specified file. ログメッセージを特定のファイルに出力。

-p FILE Save the process ID of the daemon in FILE 起動プロセスIDを FILE に保存する。

-a Log the source addresses of incoming requests. 要求元の接続元IPを記録する
————————————————–

これがディフォルトですという意味なので、それに変わるOPTIONSを設定してやればいいのだ。
今現在のsnmpdの起動プロセスは以下の通り。

# ps -ef | grep snmpd | grep -v grep
root     21881     1  0 Mar29 ?        00:00:18 /usr/sbin/snmpd -Lsd -Lf /dev/null -p /var/run/snmpd.pid -a
#

syslogを使って、細かいログを取ったりラジバンダリはいらないので、単純に
「 -LS5d -p /var/run/snmpd.pid」オプションにしてみます。

これでNOTICE以上のログは出力されますが、それ以下のINFOは表示されなくなります。

For -LF and -LS the priority specification comes before the file or facility token.  The priorities recognised are:

 0 or !  for LOG_EMERG,
 1 or a for LOG_ALERT,
 2 or c for LOG_CRIT,
 3 or e for LOG_ERR,
 4 or w for LOG_WARNING,
 5 or n for LOG_NOTICE,
 6 or i for LOG_INFO, and
 7 or d for LOG_DEBUG.
1.バックアップの作成
# cp -p /etc/sysconfig/snmpd.options /etc/sysconfig/snmpd.options.ORG
2.プロセスの確認
# ps -ef | grep snmpd | grep -v grep
3.「echo」コマンドで「OPTIONS=”-LS5d -p /var/run/snmpd.pid」を追記する
# echo 'OPTIONS="-LS5d -p /var/run/snmpd.pid"' >> /etc/sysconfig/snmpd.options
4.snmpdを再起動します。
# service snmpd restart
5.起動プロセスを確認します。
# ps -ef | grep snmpd | grep -v grep
6.暇があれば/var/log/messagesを確認して出力が無いことを確認。

 

スッキリ

このエントリーをはてなブックマークに追加

コメント大歓迎!質問も受け付けておりますヽ(*´∀`)ノ