今回は、rsyslog を試してみたいと思います。
CentOS 6 / Scientific Linux 6 では、既にsyslogdの代わりにrsyslogが標準の syslog deamon として採用されています。
( CentOS 5は、syslogdが標準の syslog deamon です。 )
今回は、そのCentOS 5 / CentOS 6で、より新しい rsyslog の rpm を作成してインストールを行ってみます。
ちなみにCentOS 5では、標準で提供されている rpm の rsyslog のバージョンは、3.22 です。
|
reliable(信頼できる)syslog deamon を目指して名付けられました。 名前にもなっている 信頼性 はもとより、豊富な機能が特徴となっています。
TCPを使った syslog の配送や、MySQLをはじめとするデータベースとの連携など、2004年の開発開始以来、syslogdに求められた機能を積極的に取り込んだものになっています。
出展:http://www.atmarkit.co.jp/flinux/rensai/newlog01/newlog01c.html
- 目次
- 履歴
2012年2月20日 初版
rpmを作成するための環境を整える
rpmを作成するためにコンパイル環境(gccなど)やrpm作成ツールなどをインストールする必要があります。
まず、ここでは、そのrpmを作成するための環境作りについて解説します。
- rpm作成ツール, コンパイラをインストールする
CentOS 共通
$ yum -y install rpm-build ... $ yum -y install gcc ...
rpm-buildをインストールすると以下のディレクトリが作成されていると思います。
CentOS 5 の場合
/usr/src/redhat /usr/src/redhat/SOURCES /usr/src/redhat/SPECS /usr/src/redhat/RPM
CentOS 6 の場合, Scientific Linux 6 の場合
もし作成されていないようなら、作成しておきましょう。/root/rpmbuild/ /root/rpmbuild/SOURCES /root/rpmbuild/SPECS /root/rpmbuild/RPM
SOURCES : ソースコード
SPECS : rpm作成ファイル (specファイル)
RPM : rpm出力先ディレクトリ
- rsyslog をコンパイルするために必要なライブラリをインストールする
CentOS 5 の場合
$ yum -y install pkgconfig zlib-devel mysql-devel postgresql-devel krb5-devel gnutls-devel net-snmp-devel libnet ...
CentOS 6 の場合, Scientific Linux 6 の場合
$ yum -y install pkgconfig zlib-devel mysql-devel postgresql-devel krb5-devel gnutls-devel net-snmp-devel ... # 32bit OSの場合 $ wget http://pkgs.repoforge.org/libnet/libnet-1.1.2.1-2.2.el6.rf.i686.rpm ... $ rpm -ivh libnet-1.1.2.1-2.2.el6.rf.i686.rpm ... # 64bit OSの場合 $ wget http://pkgs.repoforge.org/libnet/libnet-1.1.2.1-2.2.el6.rf.x86_64.rpm ... $ rpm -ivh libnet-1.1.2.1-2.2.el6.rf.x86_64.rpm ...
自分がやったときの環境では、上記のようならライブラリが必要でした。
各サーバーの環境によっては、他に必要な場合もあるでしょうし、ほとんど既にインストール済の場合もあるでしょう。
あくまで、ここで記載しているライブラリは、参考までに。
rsyslog に必要なlibrelpを作成する
rsyslog の rpmを作成するために必要なライブラリが、上記とは別にあと一つ librelp が必要です。
librelpは、rsyslog と対で必要なライブラリです。rsyslog のソースコードを最新にするので、
librelpも最新にしておきます。
- librelp のソースrpmパッケージをダウンロードし、インストールします。
$ wget http://vault.centos.org/6.1/os/SRPMS/Packages/librelp-0.1.1-4.1.el6.src.rpm ... $ rpm -ivh --nomd5 librelp-0.1.1-4.1.el6.src.rpm ... 警告: グループ mockbuild は存在しません - root を使用します ...
rpm でインストールする際、–nomd5 オプションをつけます。このオプションを指定しないとMD5チェックサムエラーが発生し、インストールできません。
エラー: アーカイブの伸長に失敗: ファイル /usr/src/redhat/SOURCES/librelp-0.1.1.tar.gz;4f3f9aab: cpio: MD5 チェックサムが適合しません。
- ソースコードのディレクトリに最新の librelp のソースコードをダウンロードします。
$ cd /usr/src/redhat/SOURCES/ [SOURCES]$ wget http://download.rsyslog.com/librelp/librelp-1.0.0.tar.gz ... `librelp-1.0.0.tar.gz' に保存中 ...
- rpm作成ファイル (specファイル)を編集します。
[SOURCES]$ cd ../SPECS/ [SPECS]$ cp librelp.spec librelp.spec.org [SPECS]$ vim librelp.spec ...
以下は、librelp.specの編集内容です。
... # (3行目あたり?)以下のバージョン情報を変更します。 #Version: 0.1.1 #Release: 4.1%{?dist} Version: 1.0.0 Release: 0 ...
編集を終えたら、保存します。
- rpmを作成します。
[SPECS]$ rpmbuild -bb librelp.spec ...
rpmbuildでrpm作成します。
これでエラーが出なければOKです。
作成されたRPM ( librelp-1.0.0-0.xxxx.rpm )は、
64bitOSなら、/usr/src/redhat/RPMS/x86_64に作成されます。
32bitOSなら、/usr/src/redhat/RPMS/i386に作成されます。
- CentOS 5 系の場合
# 32bit OS の場合
[SPECS]$ ls /usr/src/redhat/RPMS/i386/ librelp-1.0.0-0.i386.rpm librelp-devel-1.0.0-0.i386.rpm
# 64bit OS の場合
[SPECS]$ ls /usr/src/redhat/RPMS/x86_64/ librelp-1.0.0-0.x86_64.rpm librelp-devel-1.0.0-0.x86_64.rpm
- CentOS 6 系の場合
# 32bit OS の場合
[SPECS]$ ls /root/rpmbuild/RPMS/i386/ librelp-1.0.0-0.i386.rpm librelp-devel-1.0.0-0.i386.rpm
# 64bit OS の場合
[SPECS]$ ls /root/rpmbuild/RPMS/x86_64/ librelp-1.0.0-0.x86_64.rpm librelp-devel-1.0.0-0.x86_64.rpm
- CentOS 5 系の場合
- 最後にインストールします。
以下は、CentOS 5 32bit版での例です。
$ cd /usr/src/redhat/RPMS/i386/ [i386]$ rpm -ivh librelp-1.0.0-0.i386.rpm ... [i386]$ rpm -ivh librelp-devel-1.0.0-0.i386.rpm ...
CentOS 5 32bit版以外のOSの場合は、ディレクトリ名、ファイル名が異なりますので、注意が必要です。
librelp-devel までインストールできていないとrsyslogのrpmを作成する際にエラーになります。
rsyslog の最新rpmを作成する
CentOS(Redhat系)用に rpmもあります。ただ、これは、かなり古いものです。
そのため、古いソースコードのrpmから、最新のrsyslogへrpmを作ってみます。
- rsyslog 6.3.7 (v6-devel) released
- rsyslog 5.9.5 (v5-devel) released
- rsyslog 5.8.7 (v5-stable) released
- rsyslog 6.2.0 (v6-stable) released
5.6.5 (v5-stable) を用います。
色々調べた限りでは、CentOS 5.7 のデフォルトでのその他のライブラリとの関係から、利用できる最新版が 5.6.5 のようです。
5.8.7 (v5-stable) でも、 make でエラーはありませんが、動作に不安な点もありましたので、ここでは、1つ前の v5-stable である 5.6.5 を用います。
( もちろん、自力で他のライブラリもrpmを作成すればOKですが、ここでは、そこまでやりません。)
CentOS 6 系の場合、
5.8.7 (v5-stable) を用います。
CentOS 6 系では、rsyslog 5 系の最新版が動作するようなので、ここでは、rsyslog 5 系の最新の安定版を用いることにします。
- rsyslog のソースrpmパッケージをダウンロードし、インストールします。
CentOS 5 系の場合
$ wget http://vault.centos.org/5.7/os/SRPMS/rsyslog-3.22.1-3.el5_6.1.src.rpm ... $ rpm -ivh rsyslog-3.22.1-3.el5_6.1.src.rpm ... 警告: グループ mockbuild は存在しません - root を使用します ...
CentOS 6 系の場合, Scientific Linux 6 系の場合
$ wget http://dl.fedoraproject.org/pub/fedora/linux/updates/16/SRPMS/rsyslog-5.8.7-1.fc16.src.rpm ... $ rpm -ivh --nomd5 rsyslog-5.8.7-1.fc16.src.rpm ... 警告: グループ mockbuild は存在しません - root を使用します ... $ wget ftp://ftp.icm.edu.pl/vol/rzm2/ol-tmp/el6/SRPMS-updates/rsyslog-4.6.2-12.el6.src.rpm ... $ rpm -ivh rsyslog-4.6.2-12.el6.src.rpm ... 警告: グループ mockbuild は存在しません - root を使用します ...
CentOS 6 系では、Fedoraのrsyslog 5 系の最新のSRPMをインストールした後、CentOS 6 系の最新SRPMを上書きしています。
これは、rsyslog 5 系の最新パッチを盛り込みたいので、そうしています。 FedoraのSRPMをそのまま使わないのは、必要とするライブラリのバージョンがCentOSとは異なるので、使わないようにしています。
パッケージのバージョンによってファイル名も異なります。wget時には、ファイル名を確認しておきましょう。
CentOS 5系であれ6系であれ、そのバージョンで利用しているrsyslogのバージョンの最新版を使うようにします。
ここでは、CentOS 5系で現在(2012.02)の最新版 3.22.1-3 を使います。
- ソースコードのディレクトリに最新の rsyslog のソースコードをダウンロードします。
CentOS 5 系の場合
$ cd /usr/src/redhat/SOURCES $ wget http://www.rsyslog.com/files/download/rsyslog/rsyslog-5.6.5.tar.gz ...
CentOS 6 系の場合, Scientific Linux 6 系の場合
SRPMのバージョンが5.8.7を一旦はインストールしているので、ダウンロードの必要はありません。
必ず、./SOURCESにtar.gz形式の最新ファイルをダウンロードします。
rsyslogの安定版( stable )は、http://www.rsyslog.com/tag/stable/で公開されています。
- rpm作成ファイル (specファイル)を編集します。
CentOS 5 系の場合
$ cd /usr/src/redhat/SPECS $ cp rsyslog.spec rsyslog.spec.org $ vi rsyslog.spec
以下は、rsyslog.specの編集内容です。
... # 5行目あたりにあるバージョン情報を最新の1.0.10に変更します。 #Version: 3.22.1 #Release: 3%{?dist}.1 Version: 5.6.5 Release: 0 ... # 15行目あたりにあるパッチ更新情報をコメントアウトします。 # このパッチは3.22.1にあてるためのパッチなので、不要のはずです。 #Patch0: rsyslog-3.22.1-unlimitedselect.patch #Patch1: rsyslog-3.22.1-queue-hang.patch #Patch2: rsyslog-3.22.1-Qq-opt-segv.patch #Patch3: rsyslog-3.22.1-p-opt.patch #Patch4: rsyslog-3.22.1-createdirs-init.patch ... # 同じく、84行目あたりにあるパッチ更新情報をコメントアウトします。 #%patch0 -p1 -b .unlimited-select #%patch1 -p1 -b .queue-hang #%patch2 -p1 -b .Qq-opt-segv #%patch3 -p1 -b .p-opt #%patch4 -p1 -b .createdirs-init ... # 92行目あたりにあるmakeのパラメータを設定しなおします。 #%configure --sbindir=%{sbindir} \ # --disable-static \ # --enable-mysql \ # --enable-pgsql \ # --enable-gssapi-krb5 \ # --enable-imfile \ # --enable-gnutls \ # --enable-unlimited-select %configure --sbindir=%{sbindir} \ --disable-static \ --enable-pgsql \ --enable-gssapi-krb5 \ --enable-regexp \ --enable-zlib \ --enable-pthreads \ --enable-klog \ --enable-inet \ --enable-unlimited-select \ --enable-debug \ --enable-rtinst \ --enable-memcheck \ --enable-diagtools \ --enable-mysql \ --enable-snmp \ --enable-gnutls \ --enable-rsyslogrt \ --enable-rsyslogd \ --enable-extended-tests \ --enable-mail \ --enable-imptcp \ --enable-omruleset \ --enable-valgrind \ --enable-imdiag \ --enable-relp \ --enable-testbench \ --enable-imfile \ --enable-omstdout \ --enable-omdbalerting \ --enable-omuxsock \ --enable-imtemplate \ --enable-omtemplate \ --enable-pmlastmsg \ --enable-omudpspoof \ --enable-omprog ... # 143 行目あたりのファイル情報に追加します。 %files %defattr(-,root,root,-) %doc AUTHORS COPYING NEWS README doc/*html %dir %{_libdir}/rsyslog %{_libdir}/rsyslog/imklog.so %{_libdir}/rsyslog/immark.so %{_libdir}/rsyslog/imtcp.so %{_libdir}/rsyslog/imudp.so %{_libdir}/rsyslog/imuxsock.so %{_libdir}/rsyslog/imfile.so %{_libdir}/rsyslog/omtesting.so %{_libdir}/rsyslog/lmnet.so %{_libdir}/rsyslog/lmregexp.so %{_libdir}/rsyslog/lmtcpclt.so %{_libdir}/rsyslog/lmtcpsrv.so %{_libdir}/rsyslog/lmnetstrms.so %{_libdir}/rsyslog/lmnsd_ptcp.so %{_libdir}/rsyslog/imdiag.so %{_libdir}/rsyslog/imptcp.so %{_libdir}/rsyslog/imrelp.so %{_libdir}/rsyslog/imtemplate.so %{_libdir}/rsyslog/lmstrmsrv.so %{_libdir}/rsyslog/omdbalerting.so %{_libdir}/rsyslog/ommail.so %{_libdir}/rsyslog/omprog.so %{_libdir}/rsyslog/omrelp.so %{_libdir}/rsyslog/omruleset.so %{_libdir}/rsyslog/omsnmp.so %{_libdir}/rsyslog/omstdout.so %{_libdir}/rsyslog/omtemplate.so %{_libdir}/rsyslog/omudpspoof.so %{_libdir}/rsyslog/omuxsock.so %{_libdir}/rsyslog/pmlastmsg.so %config(noreplace) %{_sysconfdir}/rsyslog.conf %config(noreplace) %{_sysconfdir}/sysconfig/rsyslog %config(noreplace) %{_sysconfdir}/logrotate.d/syslog %{_initrddir}/rsyslog %{sbindir}/msggen %{sbindir}/rsyslog_diag_hostname %{sbindir}/zpipe %{sbindir}/rsyslogd %{_mandir}/*/* ...
CentOS 6 系の場合, Scientific Linux 6 系の場合
$ cd /root/rpmbuild/SPECS $ cp rsyslog.spec rsyslog.spec.org $ vi rsyslog.spec
以下は、rsyslog.specの編集内容です。
... # 8行目あたりにあるバージョン情報を最新の1.0.10に変更します。 #Version: 4.6.2 #Release: 12%{?dist} Version: 5.8.7 Release: 1%{?dist} ... # 18行目あたりにあるパッチ更新情報をコメントアウトします。 # このパッチは4.6.2-12にあてるためのパッチなので、不要のはずです。 #Patch0: rsyslog-4.6.2-unlimited-select.patch #Patch1: rsyslog-4.6.2-omfile-flush.patch #Patch2: rsyslog-4.6.2-enable-HUPisRestart.patch #Patch3: rsyslog-4.6.2-replace-temporary-fix.patch #Patch4: rsyslog-4.6.2-dflt-ruleset.patch #Patch5: rsyslog-4.6.2-bz701782.patch #Patch6: rsyslog-4.6.2-fix-tls-loop.patch #Patch7: rsyslog-4.6.2-action-exec-interval.patch #Patch8: rsyslog-4.6.2-bz733648.patch #Patch9: rsyslog-4.6.2-bz737096-option.patch #Patch10: rsyslog-4.6.2-bz737096-template.patch # 続けて5.8.7-1に提供されているパッチを設定します。 Patch0: rsyslog-5.8.5-systemd.patch Patch1: rsyslog-5.8.7-sysklogd-compat-1-template.patch Patch2: rsyslog-5.8.7-sysklogd-compat-2-option.patch ... # 同じく、113行目あたりにあるパッチ更新情報をコメントアウトします。 #%patch0 -p1 -b .unlimited-select #%patch1 -p1 -b .omfileflush #%patch2 -p1 -b .enable-HUPisRestart #%patch3 -p1 -b .replace-temporary-fix #%patch4 -p1 -b .dflt-ruleset #%patch5 -p1 -b .bz701782 #%patch6 -p1 -b .fix-tls-loop #%patch7 -p1 -b .action-exec-interval #%patch8 -p1 -b .bz733648 #%patch9 -p1 -b .bz737096-option #%patch10 -p1 -b .bz737096-template # 続けて5.8.7-1に提供されているパッチの更新を設定します。 %patch0 -p1 %patch1 -p1 %patch2 -p1 ... # 131行目あたりにあるmakeのパラメータを設定しなおします。 #%configure --disable-static \ # --disable-testbench \ # --enable-mail \ # --enable-mysql \ # --enable-pgsql \ # --enable-gssapi-krb5 \ # --enable-imfile \ # --enable-relp \ # --enable-gnutls \ # --enable-snmp \ # --enable-unlimited-select %configure --disable-static \ --disable-testbench \ --enable-pgsql \ --enable-gssapi-krb5 \ --enable-regexp \ --enable-zlib \ --enable-pthreads \ --enable-klog \ --enable-inet \ --enable-unlimited-select \ --enable-debug \ --enable-rtinst \ --enable-memcheck \ --enable-diagtools \ --enable-mysql \ --enable-snmp \ --enable-gnutls \ --enable-rsyslogrt \ --enable-rsyslogd \ --enable-extended-tests \ --enable-mail \ --enable-imptcp \ --enable-omruleset \ --enable-valgrind \ --enable-imdiag \ --enable-relp \ --enable-testbench \ --enable-imfile \ --enable-omstdout \ --enable-omdbalerting \ --enable-omuxsock \ --enable-imtemplate \ --enable-omtemplate \ --enable-pmlastmsg \ --enable-omudpspoof \ --enable-omprog \ --enable-impstats ... # 191 行目あたりのファイル情報に追加します。 %files %defattr(-,root,root,-) %doc AUTHORS COPYING ChangeLog NEWS README doc/*html %dir %{_libdir}/rsyslog %{_libdir}/rsyslog/imklog.so %{_libdir}/rsyslog/immark.so %{_libdir}/rsyslog/imtcp.so %{_libdir}/rsyslog/imudp.so %{_libdir}/rsyslog/imuxsock.so %{_libdir}/rsyslog/imfile.so %{_libdir}/rsyslog/lmnet.so %{_libdir}/rsyslog/lmregexp.so %{_libdir}/rsyslog/lmtcpclt.so %{_libdir}/rsyslog/lmtcpsrv.so %{_libdir}/rsyslog/lmnetstrms.so %{_libdir}/rsyslog/lmnsd_ptcp.so %{_libdir}/rsyslog/lmstrmsrv.so %{_libdir}/rsyslog/lmzlibw.so %{_libdir}/rsyslog/ommail.so %{_libdir}/rsyslog/omtesting.so %{_libdir}/rsyslog/imdiag.so %{_libdir}/rsyslog/impstats.so %{_libdir}/rsyslog/imptcp.so %{_libdir}/rsyslog/imtemplate.so %{_libdir}/rsyslog/omdbalerting.so %{_libdir}/rsyslog/omprog.so %{_libdir}/rsyslog/omruleset.so %{_libdir}/rsyslog/omstdout.so %{_libdir}/rsyslog/omtemplate.so %{_libdir}/rsyslog/omudpspoof.so %{_libdir}/rsyslog/omuxsock.so %{_libdir}/rsyslog/pmlastmsg.so %config(noreplace) %{_sysconfdir}/rsyslog.conf %config(noreplace) %{_sysconfdir}/sysconfig/rsyslog %config(noreplace) %{_sysconfdir}/logrotate.d/syslog %dir %{rsyslog_pkidir} %{_initrddir}/rsyslog %{_sbindir}/msggen %{_sbindir}/rsyslog_diag_hostname %{_sbindir}/zpipe %{_sbindir}/rsyslogd %{_mandir}/*/* ...
編集を終えたら、保存します。
ここで設定しているconfigフラグは、以下のようなフラグを設定できます。
- –disable-option-checking : ignore unrecognized –enable/–with options
- –disable-FEATURE : do not include FEATURE (same as –enable-FEATURE=no)
- –enable-FEATURE[=ARG] : include FEATURE [ARG=yes]
- –enable-silent-rules : less verbose build output (undo: `make V=1′)
- –disable-silent-rules : verbose build output (undo: `make V=0′)
- –disable-dependency-tracking : speeds up one-time build
- –enable-dependency-tracking : do not reject slow dependency extractors
- –enable-static[=PKGS] : build static libraries [default=no]
- –enable-shared[=PKGS] : build shared libraries [default=yes]
- –enable-fast-install[=PKGS] : optimize for fast installation [default=yes]
- –disable-libtool-lock : avoid locking (might break parallel builds)
- –disable-largefile : omit support for large files
- –enable-regexp : Enable regular expressions support [default=yes]
- –enable-zlib : Enable zlib compression support [default=yes]
- –enable-gssapi-krb5 : Enable GSSAPI Kerberos 5 support [default=no]
- –enable-pthreads : Enable multithreading via pthreads [default=yes]
- –enable-klog : Integrated klog functionality [default=yes]
- –disable-unix : Disable support for unix
- –enable-inet : Enable networking support [default=yes]
- –disable-fsstnd : Disable support for FSSTND
- –enable-unlimited-select : Enable unlimited select() syscall [default=no]
- –enable-debug : Enable debug mode [default=no]
- –enable-rtinst : Enable runtime instrumentation mode [default=no]
- –enable-valgrind : Enable valgrind support settings [default=no]
- –enable-memcheck : Enable extended memory check support [default=no]
- –enable-diagtools : Enable diagnostic tools [default=no]
- –enable-mysql : Enable MySql database support [default=no]
- –enable-pgsql : Enable PostgreSQL database support [default=no]
- –enable-oracle : Enable native Oracle database support [default=no]
- –enable-libdbi : Enable libdbi database support [default=no]
- –enable-snmp : Enable SNMP support [default=no]
- –enable-gnutls : Enable GNU TLS support [default=no]
- –enable-rsyslogrt : Build rsyslogrt [default=yes]
- –enable-rsyslogd : Build rsyslogd [default=yes]
- –enable-extended-tests : extended testbench [default=no]
- –enable-mail : Enable mail support [default=no]
- –enable-imdiag : Enable imdiag [default=yes]
- –enable-relp : Enable RELP support [default=no]
- –enable-rfc3195 : Enable RFC3195 support [default=no]
- –enable-testbench : file input module enabled [default=yes]
- –enable-imfile : file input module enabled [default=no]
- –enable-imsolaris : door input module enabled [default=no]
- –enable-imptcp : plain tcp input module enabled [default=no]
- –enable-omprog : Compiles omprog module [default=no]
- –enable-omudpspoof : Compiles omudpspoof module [default=no]
- –enable-omstdout : Compiles stdout module [default=no]
- –enable-pmlastmsg : Compiles lastmsg parser module [default=no]
- –enable-pmrfc3164sd : Compiles rfc3164sd parser module [default=no]
- –enable-omruleset : Compiles ruleset forwarding module [default=yes]
- –enable-omdbalerting : Compiles omdbalerting module [default=no]
- –enable-gui : Enable GUI programs [default=no]
- –enable-omuxsock : Compiles stdout module [default=no]
- –enable-cust1 : Compiles stdout module [default=no]
- –enable-imtemplate : Compiles imtemplate template module [default=no]
- –enable-omtemplate : Compiles omtemplate template module [default=no]
- rpmを作成します。
$ rpmbuild -bb rsyslog.spec ...
rpmbuildでrpm作成します。
これでエラーが出なければOKです。
作成されたRPM ( rsyslog-5.x.x-x.xxxx.rpm )は、
CentOS 5 系の場合
64bitOSなら、/usr/src/redhat/RPMS/x86_64に作成されます。
32bitOSなら、/usr/src/redhat/RPMS/i386に作成されます。
CentOS 6 系の場合
64bitOSなら、/root/rpmbuild/RPMS/x86_64に作成されます。
32bitOSなら、/root/rpmbuild/RPMS/i686に作成されます。
以下は32bitOSの場合のファイルリスト例です。
CentOS 5 (32bit) の場合
$ ls /usr/src/redhat/RPMS/i386/ rsyslog-5.6.5-0.i386.rpm rsyslog-mysql-5.6.5-0.i386.rpm rsyslog-gnutls-5.6.5-0.i386.rpm rsyslog-pgsql-5.6.5-0.i386.rpm rsyslog-gssapi-5.6.5-0.i386.rpm
CentOS 6 (32bit) の場合, Scientific Linux 6 (32bit) の場合
$ ls /root/rpmbuild/RPMS/i686/ syslog-5.8.7-1.el6.i686.rpm rsyslog-mysql-5.8.7-1.el6.i686.rpm rsyslog-debuginfo-5.8.7-1.el6.i686.rpm rsyslog-pgsql-5.8.7-1.el6.i686.rpm rsyslog-gnutls-5.8.7-1.el6.i686.rpm rsyslog-relp-5.8.7-1.el6.i686.rpm rsyslog-gssapi-5.8.7-1.el6.i686.rpm rsyslog-snmp-5.8.7-1.el6.i686.rpm
そもそも、rpmbuildが動作しない場合は、
のような必要なビルド環境をインストールしてください。$ yum -y install yum-utils $ yum -y install rpm-build $ yum -y install gcc++
また、必要なライブラリが不足している場合は、その必要なライブラリが表示されますので、yumで一つ一つインストールすればOKです。
rsyslogをインストールする
rpmさえできれば、インストールは簡単ですね。
以下の手順は、32bit版のrsyslogをインストールした例です。
CentOS 5 (32bit) の場合
- rsyslog をインストールする
$ rpm -ivh /usr/src/redhat/RPMS/i386/rsyslog-5.6.5-0.i386.rpm ...
- syslog を停止する
$ /etc/init.d/syslog stop カーネルロガーを停止中: [ OK ] システムロガーを停止中: [ OK ]
- rsyslog を起動する
$ /etc/init.d/rsyslog start システムロガーを起動中: [ OK ]
- rsyslog が動いているかログを確認する
$ tail /var/log/message ... Feb 18 18:19:24 host69 kernel: imklog 5.6.5, log source = /proc/kmsg started. Feb 18 18:19:24 host69 rsyslogd: [origin software="rsyslogd" swVersion="5.6.5" x-pid="23047" x-info="http://www.rsyslog.com"] start
- rsyslog を再起動しても自動で立ち上がるように設定する
まず、今まで動作していた sysylogd の自動起動を停止し、
rsysylog の自動起動を設定します。
$ chkconfig syslog off $ chkconfig --list syslog syslog 0:off 1:off 2:off 3:off 4:off 5:off 6:off $ chkconfig rsyslog on $ chkconfig --list rsyslog rsyslog 0:off 1:off 2:on 3:on 4:on 5:on 6:off $
CentOS 6 (32bit) の場合, Scientific Linux 6 (32bit) の場合
- rsyslog を停止する
$ /etc/init.d/rsyslog stop システムロガーを停止中: [ OK ]
- rsyslog をアンインストールする
$ yum remove rsyslog ...
- rsyslog をインストールする
$ rpm -ivh /root/rpmbuild/RPMS/i686/syslog-5.8.7-1.el6.i686.rpm ...
- rsyslog を起動する
$ /etc/init.d/rsyslog start システムロガーを起動中: [ OK ]
- rsyslog が動いているかログを確認する
$ tail /var/log/message ... Feb 20 13:29:42 db kernel: imklog 5.8.7, log source = /proc/kmsg started. Feb 20 13:29:42 db rsyslogd: [origin software="rsyslogd" swVersion="5.8.7" x-pid="8481" x-info="http://www.rsyslog.com"] start
- rsyslog を再起動しても自動で立ち上がるように設定する
CentOS 6 では、デフォルトで動作しているはずなので、何も設定する必要はありません。
念のため確認し、もし、 rsysylog の自動起動が設定されていないなら、設定しておきましょう。
$ chkconfig --list rsyslog rsyslog 0:off 1:off 2:off 3:off 4:off 5:off 6:off $ chkconfig rsyslog on $ chkconfig --list rsyslog rsyslog 0:off 1:off 2:on 3:on 4:on 5:on 6:off $
これで、syslogd並みのロギングが開始されたはずです。
一応rpmができましたので、librelp , syslog の2つと、機能ごとのsyslog-mysqlのようなrpmが作成されていますので、必要に応じてインストールすれば良いことになります。
ちょっと、面倒でしたが、 複数台のサーバーを管理している方には、rpmで展開できるとありがたいですよね。
一度お試しあれ。
このサイトでは、コンテンツの一部が非表示、あるいは、コメント、お問い合わせの投稿ができない、検索ができないことがあります。
コメントを投稿 :