連載
» 2008年08月21日 00時00分 公開

syslog-ngの導入と設定新世代syslogデーモン徹底活用(2)(2/3 ページ)

[Shin.鶴長,@IT]

syslog-ngの設定(syslogdの設定ファイルを再利用)

 syslog-ng単体で新たに設定する方法は次ページで解説します。その前にここでは、syslogdで使用していた「syslogd.conf」を変換して利用する方法を紹介します。変換には「syslog2ng」スクリプトを使用します。

 syslog2ngスクリプトは、ソースからインストールした場合は、ソースディレクトリ中の「contrib/」に見つけることができます。バイナリパッケージを使った場合は「/usr/share/doc/syslog-ng-2.0.9」などにあります。

(既存ファイルがある場合は、事前にバックアップを作成しておく)
# mv /etc/syslog-ng/syslog-ng.conf /etc/syslog-ng/syslog-ng.conf.org
 
(syslog2ngスクリプトの実行:yumやrpmを使ってインストールした場合)
# awk -f /usr/share/doc/syslog-ng-2.0.9/syslog2ng /etc/syslogd.conf > /etc/syslog-ng/syslog-ng.conf
 
(syslog2ngスクリプトの実行:ソースアーカイブを使ってインストールした場合)
# awk -f /...syslog-ng-2.0.9のソース.../contrib/syslog2ng /etc/syslogd.conf > /etc/syslog-ng/syslog-ng.conf
syslog2ngを使ってsyslogdの設定ファイルを変換する

 変換されたsyslog-ng.confに対しては、syslog-ngを起動する前に必ず構文チェックを実施しておきましょう。

# syslog-ng -s
syslog-ng設定ファイルの構文チェック

syslog-ngの起動、停止、再起動

 次に、syslog-ngを起動します。

 syslogdなどほかのデーモンを使用している場合には、デーモンを停止し、自動起動も解除する必要があります。CentOSなど、標準シスログデーモンとしてsyslogdを使用している場合の解除方法は、次のとおりです。

# /etc/init.d/syslog stop ←syslogの停止
# chkconfig --list syslog ←syslogdの自動起動解除
syslog    0:off   1:off   2:on   3:on   4:on   5:on   6:off
  ←ランレベル2、3、4、5で自動起動が登録されていることを確認
# chkconfig --level 2345 syslog off
  ←ランレベル2、3、4、5で自動起動解除
syslogdの停止、自動起動解除

 なお、Fedoraのようにrsyslogを使用しているディストリビューションでは、「/etc/init.d/syslog」の代わりに、「/etc/init.d/rsyslog」に対し、停止と自動起動解除を行います。UbuntuやDebianでは「サービスの設定」やsysv-rc-confコマンドなどを利用します。

 続いて、syslog-ngのインストールで用意した「/etc/init.d/syslog-ng」スクリプトを使って、syslog-ngを自動起動するように登録します。chkconfigコマンドを利用した自動起動の登録/解除は次のとおりです。先ほどと同様、UbuntuやDebianでは「サービスの設定」を利用します。

# chkconfig --add syslog-ng  ←自動起動登録
# chkconfig --list syslog-ng  ←設定確認
syslog-ng    0:off   1:off   2:on   3:on   4:on   5:on   6:off
  ←ランレベル2、3、4、5で「on」になっていない場合は「# chkconfig --level 2345 syslog-ng on」を実行
syslog-ngの自動起動設定
画面2 Ubuntuのサービスの設定(デスクトップメニューの「システム→システム管理→サービスの設定」で起動) 画面2 Ubuntuのサービスの設定(デスクトップメニューの「システム→システム管理→サービスの設定」で起動)

 手動でsyslog-ngデーモンの起動や停止、再起動を行う場合も「/etc/init.d/syslog-ng」スクリプトを利用します。設定を修正するたびに、再起動が必要になります。

# /etc/init.d/syslog-ng start  ←syslog-ngの起動
# /etc/init.d/syslog-ng stop   ←syslog-ngの停止
# /etc/init.d/syslog-ng restart ←syslog-ngの再起動
syslog-ngの起動、停止、再起動

動作確認

 syslog-ngの動作を確認するためにloggerコマンドを使用します。loggerコマンドでシスログを意図的に発生させ、ログファイルにログが書き込まれていることを確認します。

# logger -p daemon.crit syslog-ng install ok
   ←「-p」でファシリティとプライオリティを指定
# tail /var/log/messages(または/var/log/syslog)
Aug  5 05:07:29 ○○ ○○: syslog-ng install ok
loggerコマンドを使ったsyslog-ngの動作確認

Copyright © ITmedia, Inc. All Rights Reserved.

RSSについて

アイティメディアIDについて

メールマガジン登録

@ITのメールマガジンは、 もちろん、すべて無料です。ぜひメールマガジンをご購読ください。