Home > Computer > Linux Archive

Linux Archive

NASのディスクが壊れた

2年間使っているNAS QNAP TS-259のディスクが壊れた。

交換用のディスクは持っていないので、Amazonで注文したら当日中に届いてすぐに交換できた。
すごく便利な世の中になったものだ。

リビルドに2日間くらいかかりそうだから、それまでにもう一方のディスクが故障しないことを祈る。

qmailanalogでログが正常に集計されない

  • Posted by: Jay
  • Linux

昨日になって急に気付いたのだが、日時でログを集計しているのqmailanalogが正常に動いていないみたい。

こんな感じで一件集計されているように見えるけど、
deferralのメッセージがあるのにzdeferralsのデータがなかったり、
zrhosts・zfailures・zsuids・zdeferralsが動いていない模様。

-----------Result of zoverall------------

Basic statistics

qtime is the time spent by a message in the queue.

ddelay is the latency for a successful delivery to one recipient---the
end of successful delivery, minus the time when the message was queued.

xdelay is the latency for a delivery attempt---the time when the attempt
finished, minus the time when it started. The average concurrency is the
total xdelay for all deliveries divided by the time span; this is a good
measure of how busy the mailer is.

Completed messages: 153
Recipients for completed messages: 153
Total delivery attempts for completed messages: 153
Average delivery attempts per completed message: 1
Bytes in completed messages: 1501110
Bytes weighted by success: 1501110
Average message qtime (s): 1.12839

Total delivery attempts: 153
success: 153
failure: 0
deferral: 0
Total ddelay (s): 165.507989
Average ddelay per success (s): 1.081752
Total xdelay (s): 122.277667
Average xdelay per delivery attempt (s): 0.799200
Time span (days): 0.945623
Average concurrency: 0.00149663

-----------Result of zddist------------
Distribution of ddelays for successful deliveries

Meaning of each line: The first pct% of successful deliveries
all happened within doneby seconds. The average ddelay was avg.

doneby avg pct
0.27 0.17 10
...
4.24 1.08 100

-----------Result of zdeferrals------------
Reasons for deferral

One line per reason for deferral. Information on each line:
* del is the number of deliveries that ended for this reason.
* xdelay is the total xdelay on those deliveries.

del xdelay reason

-----------Result of zfailures------------
Reasons for failure

One line per reason for delivery failure. Information on each line:
* del is the number of deliveries that ended for this reason.
* xdelay is the total xdelay on those deliveries.

del xdelay reason

-----------Result of zrhosts------------
Recipient hosts

One line per recipient host. Information on each line:
* sbytes is the number of bytes successfully delivered to this host.
* mess is the number of messages sent to this host (success plus failure).
* tries is the number of delivery attempts (success, failure, deferral).
* xdelay is the total xdelay incurred by this host.

sbytes mess tries xdelay host

-----------Result of zsuids------------
Sender uids

One line per sender uid. Information on each line:
* mess is the number of messages sent by this uid.
* bytes is the number of bytes sent by this uid.
* sbytes is the number of bytes successfully received from this uid.
* rbytes is the number of bytes from this uid, weighted by recipient.
* recips is the number of recipients (success plus failure).
* tries is the number of delivery attempts (success, failure, deferral).
* xdelay is the total xdelay incurred by this uid.

mess bytes sbytes rbytes recips tries xdelay uid

-----------Result of zrxdelay------------
Recipients in the best order for mailing lists

One line per recipient, sorted by avg. Information on each line:
* avg is the _average_ xdelay for the recipient.
* tries is the number of deliveries that avg is based on.

avg tries recipient
0.10 36 local.soph.jp-xxxxxxxx@soph.jp
0.38 15 remote.xxxxxxxxxx@i.softbank.jp
0.42 28 local.soph.jp-xxxxxxxxx@soph.jp
0.63 2 remote.xxxxxxxx@xxx.ocn.ne.jp
2.63 28 remote.xxxxx@gmail.com
...

VMware Converter

  • Posted by: Jay
  • Linux

サーバーの音や電力消費が気になってきて、Dell PowerEdge1800からFujitsuTX100 S1に換えることにしました。

これを機に物理サーバから仮想サーバに移行することにしたので、VMwareConverterを使って移行してみました。

手順通り進めてるとエラーで終了してしまって、何度試しても同じ現象。

いろいろ調べてみたら、なぜか/var/log/lastlogのサイズが1TB以上ある。
ハードディスクのサイズは420GBぐらいしかないから、明らかにおかしい。
削除してから再度VMwareConverterを実行すると移行完了。

ここにも同様の現象があるとの報告があった。
VMware Communities: P2V RedHat Linux failed ...

Linux強制リブート

  • Posted by: Jay
  • Linux

今日はmysqlとかphpとかコンパイルしているうちにファイルシステムにエラーが見つかってReadOnlyになってしまった。
それからというものreboot とか shutdown -r now とか全く効かなくて、再起動できなくて本当に困った。

探してみるとこんな方法もあるんだ。

ぴょぴょぴょ? - Linuxとかプログラミングの覚え書き linux を強制リブートする方法

linux を強制的に遠隔から再起動する方法。

# echo b > /proc/sysrq-trigger
これだけ。

無事に再起動して復旧。超助かりました。

MovableType Perlのパスを一括変換

いつもPerlのパスを入力して変更していたんだけど、めんどくさいので一括で変更できる方法を調べてみた。

bashとsedで複数ファイルのテキストを置換する方法 - Vik's Linux Tips

こちらを参考にしてこんな風に変更
find . -name "*.cgi" -exec sed -i 's/\/usr\/bin\/perl/\/usr\/local\/bin\/perl/' {} \;

これでMovableTypeのアップデートも簡単にできるようになった。

CentOS 5.2 アップグレード

  • Posted by: Jay
  • Linux

CentOS 5.2 が6月24日にリリースされていたので、いつも通りアップグレード。

今回は公式にアップグレードにはyumを使えってアナウンスされているから、安心して出来る。

yum upgradeをやってみると、700以上のパッケージがインストールされて、無事アップグレードできた。大体20分ぐらいで終わったかな。

[CentOS-announce] Release for CentOS-5.2 i386 and x86_64

Updating from CentOS-5.0 and 5.1

If you are already running CentOS-5 ( either 5.0 or 5.1 ), all you need to do is run : "yum upgrade" on your machine, and that will bring in the new packages from 5.2 and update your machine. Note that the command required is 'upgrade' and not the usual 'update'. Refer to the yum man page for details on how those two differ in operation.

サーバ再開

意外と早くサーバを復活できました!

IPも変わらずなので、設定もそのまま。フレッツだと移転は楽ちんだね。

ハードディスクが壊れました

  • Posted by: Jay
  • Linux

朝メールが受信できなくなっていると思ってサーバにログインしたら、コマンドがどれもこれもI/Oエラーで動かなくなっていた。これは...と思って原因を調べてみたら、Raidのハードディスクが1本壊れてました。

替えのHDを持っていなかったので、早速ヤフオクで購入。すぐにバックアップを取って翌々日には交換したけど、その間にもう一本壊れたらと思うとヒヤヒヤした。

このblogのデータがなくなったら結構ショックだろうな。壊れてみて分かる、バックアップの大切さだね。自動バックアップの方法を考えなきゃ。

MySQL 5.0.51 アップデート

  • Posted by: Jay
  • Linux

MySQLが5.0.51にアップデートされていたので、いつも通り入れてみることにしたら、
今回はうまくいかなかったのでメモ。

アーカイブをダウンロードして解凍、

$ ./configure --prefix=/usr/local/mysql --with-extra-charsets=complex --enable-thread-safe-client --enable-local-infile
$ make
$ make test
# make install
これでインストール完了。

mysqldを起動しようと起動スクリプトを実行したらなぜか起動しない。ログも出力されていなかった。

起動スクリプトをソースのディレクトリにあるsupport-files/mysql.serverに変えてみても変わらず。

設定ファイルmy.cnf内でサーバ設定の記述方法が変わっていただろうのか、設定が認識できていなかったようだ。

my.cnfの以下の記述を変更
[mysqld]

[mysql.server]

これで修正完了。

ドキュメントを見ると[mysqld]でも[mysql.server]でも両方とも可能なように読めるのだけど、実際は[mysqld]は使えないのかな?

CentOS 5.1 アップデート

  • Posted by: Jay
  • Linux

yumでアップデートするか迷っていたのだけど、結局めんどくさかったのでyumを使うことにした。

yum upgrade と入力してから待つこと10分。523のトランザクションの後に完了のメッセージが!とりあえずリブートしてみたら、あっけないくらいすんなり動いた。

もっといろいろトラブルを予想していたのだが、無事に動いてよかった。

CentOS 5.1 リリース

  • Posted by: Jay
  • Linux

12月2日にCentOS 5.1がリリースされた。

[CentOS-announce] Release for CentOS-5.1 i386 and x86_64

CentOS 5にアップグレードするときにはyumで苦労したけど、
今回はどういった方法でアップデートしようかな。

リリースノート

試しにyum updateってしたらパッケージが254個アップデートされるって出てきた。
やってみたくなっちゃうな。

Transaction Summary

=============================

Install 10 Package(s)

Update 254 Package(s)

Remove 2 Package(s)

qmail-scannerからsimscanに変えてみる

  • Posted by: Jay
  • Linux

今までは qmailのwrapperにqmail-scannerを使っていたけど、
Perlのアップグレードをした際に調子が悪くなったりしたし、
Perlスクリプトのwrapperってオーバーヘッドが気になって、
なんか他にいいのはないかなと探してみたら、
simscanというのがあるらしい。

早速自宅の環境で試すことにした。

参考にしたのはこちら。
BSD にくびったけ - (qmail)simscan
にぐるの日々 | qmail with simscan on FreeBSD
しかし日本語の情報が少ないなー。
普通はqmail-scanner使うもんな。

qmail STARTTLS が 遅い

  • Posted by: Jay
  • Linux

以前に、国内のISPが、
Outbound Port 25 Blockingを採用することが増えてきたので、
Submission用にqmailを設定しなおした。

Submission Portを設定するときに、
以下のパッチを使ってSMTPAUTHとSTARTTLSで暗号化の設定を行った。
Qmail SMTP-AUTH/TLS composite patch

設定後、STARTTLSで送信しようとすると一応出来るのだが、
ものすごく時間がかかってタイムアウトしてしまうことが多かった。
考えられるDNSの逆引きやident要求は切ってあるので原因がわからなかった。

そこで、調べてみるとこんな情報が。
qmail STARTTLS is slow | differentpla.net
It turns out that the TLS patch uses some precomputed values (according to this mailing list post from 2004). If these aren't present, it computes them on the fly, causing a substantial slowdown.

TLSパッチを当てたあとインストールする際に、

/var/qmail/control/dh1024.pem
/var/qmail/control/dh512.pem
/var/qmail/control/rsa512.pem
というようなファイルを作るのだが、
これをSTARTTLSの際に呼び出しているらしい。
smtpdが読み込めなければ新たに計算し直しているために
時間がかかっていたようだった。

上記3つのファイルの所有者は以下のようになっていたのだが、
-rw------- 1 qmaild qmail 245 1月 15 14:15 dh1024.pem
-rw------- 1 qmaild qmail 156 1月 15 14:14 dh512.pem
-rw------- 1 qmaild qmail 497 1月 15 14:14 rsa512.pem
vpopmailを使用しているので、smtpdは
user: vpopmail ,group: vchkpw動いているため読み込めない。
よって、このように変更。
-rw------- 1 vpopmail vchkpw 245 1月 15 14:15 dh1024.pem
-rw------- 1 vpopmail vchkpw 156 1月 15 14:14 dh512.pem
-rw------- 1 vpopmail vchkpw 497 1月 15 14:14 rsa512.pem

これでSTARTTLSも快適に動くようになった。

CentOS 5は強敵だった…

  • Posted by: Jay
  • Linux

サーバーを止めてから早10時間。

2時間ぐらいで終わると思ったのに、
こんなに時間がかかってしまった。

DNSが起動しなかったり、
コンパイルし直しをしようとしたらbinutilsが動かなかったり、
メールはユーザーデータを読みに行かなかったり、
他にもいろいろあって散々だった。

でもやっとそこそこ復旧した。
あとは細かい設定を全部見直せば完了。

これだったらバックアップとって、
新規にインストールし直した方が早かったかも。

まぁいろいろ勉強になったし良しとするか。

CentOS 5にアップグレード失敗

  • Posted by: Jay
  • Linux

CentOS 5 が4月中旬にリリースされていたので、
yumを使ってアップグレードすることにした。

ここに書かれているとおり、
yumでのアップグレードには問題があるので勧められないけど。

やり方はこちらを参考にしてやってみた。
しんちゃんの今日: CentOS 5
# rpm -Uvh http://mirror.centos.org/centos/5/os/x86_64/CentOS/centos-release-5-0.0.el5.centos.2.x86_64.rpm http://mirror.centos.org/centos/5/os/x86_64/CentOS/centos-release-notes-5.0.0-2.x86_64.rpm
# yum clean all
# yum --disablerepo=* --enablerepo=base --enablerepo=updates update yum* rpm*
# yum clean all
# yum --disablerepo=* --enablerepo=base --enablerepo=updates upgrade
でも、こんなエラーがたくさん出てきて完了できず。
Error: Package kudzu needs kernel < 2.6.13, this is not available.
Error: Package yelp needs gecko-libs = 1.8.0.9, this is not available.
Error: Package initscripts needs kernel < 2.6.12, this is not available.
Error: Package gnome-libs needs libdb.so.2(GLIBC_2.0), this is not available.
Error: Package lksctp-tools needs kernel < 2.6.10, this is not available.

むぅ。どうしようかな。

Clam AV 0.90 リリース

  • Posted by: Jay
  • Linux

オープンソースのアンチウィルスソフト、
Clam AntiVirusの0.90が公開されていた。

InstallFromSource < Main < ClamAV Wiki
ここを見ると、インストールするためには古いバージョンを削除しなければいけない。
インストールしてある古いバージョンのソースディレクトリで、
# make uninstall
新しいバージョンのソースディレクトリで、
# ./configure --enable-experimental
# make
# make install

これでインストール完了。
ちょっといつもと手順が違ったのでメモ。

FastCGIインストール

Movable Type 3.34 で FastCGIのサポートが強化されたというので、
早速使ってみることにした。

FastCGIのインストール
FastCGI Homeからソースをダウンロー
fcgi-2.4.0.tar.gz
解凍したディレクトリで以下を実行。
$ ./configure
$ make
# make install

次にApache用のモジュール
mod_fastcgiのインストール
mod_fastcgi-2.4.2.tar.gz
解凍して出来たディレクトリで以下を実行

$ cp Makefile.AP2 Makefile
$ make
$ make install
※Apache2の場合のみMakefile.AP2を使用する

ところが、makeのところでエラーが発生

451 qq temporary problem (#4.3.0)

  • Posted by: Jay
  • Linux

メールの送信でエラーが出ていたみたい。

qmail-scanner関係のエラーのようだ。
451 qq temporary problem (#4.3.0)

調べてみると先日アップデートしたClamAntivirusが落ちていた。
前のヴァージョン(0.88.5)に戻してみたら起動したので、
そのまま使うことに。

とりあえずこのまま様子を見て、
ClamAntivirusのRCがとれたらまたアップデートすることにしよう。

Clam Antivirus 0.90RC1 インストール

  • Posted by: Jay
  • Linux

Linux上で動くフリーのアンチウィルスソフトの、
Clam AntiVirus™

がアップデートされていたので、
インストールしてみた。

すんなりいかなかったのでメモ。

http://sourceforge.net/project/showfiles.php?group_id=86638&release_id=455836

上記のURLからソースをダウンロードして解凍
$ ./configure --sysconfdir=/etc
$ make
$ su
# make install

これでインストール完了。

/etc/init.d/clamd startで起動すると、

いろいろオプションの記述が変わっているようで起動しない。

clamd を起動中: ERROR: Parse error at line 34: Option LogTime requires boolean argument.
ERROR: Can't open/parse the config file /etc/clamd.conf

clamd を起動中: ERROR: Parse error at line 170: Unknown option DisableDefaultScanOptions.
ERROR: Can't open/parse the config file /etc/clamd.conf

clamd を起動中: ERROR: Parse error at line 204: Option ScanMail requires boolean argument.
ERROR: Can't open/parse the config file /etc/clamd.conf

clamd を起動中: ERROR: Parse error at line 219: Option ScanHTML requires boolean argument.
ERROR: Can't open/parse the config file /etc/clamd.conf
/etc/clamd.conf

clamd を起動中: ERROR: Parse error at line 228: Option ScanArchive requires boolean argument.
ERROR: Can't open/parse the config file /etc/clamd.conf

オプションがなくなっていたり、boolean値で指定するようになったりと、
いくつか書き換えて無事に起動できた。

AirProxy

  • Posted by: Jay
  • Linux

W-ZERO3[es]でWebサイトの表示を早くしたいなと思っていたら、
画像を圧縮できるProxyがあったので、
インストールして試すことにした。

airproxy

1.JREのインストール
 これはSunからダウンロードしてきてインストール。

2.airproxyのダウンロード、設定
 サーバ上でダウンロードして、
 /usr/local/airproxyに解凍
 設定ファイルを更新
 airproxy.properties

hostname = soph.jp #ホスト名
port = **** #airproxyのポート番号

web.port = **** #管理画面のポート番号

parent.hostname = #上位プロクシのホスト名
parent.port = #上位プロクシのポート番号
parent.username = #上位プロクシのユーザ名
parent.password = #上位プロクシのパスワード

ddns.update.url = #DDNSサービスのIP更新URL
ddns.update.interval = #DDNSサービスのIP更新間隔

cache.prefetch = on #キャッシュのオン/オフ

log.access.filename = /var/log/airproxy.log
#ログファイル名

 users ディレクトリのclubh.properties
これがユーザー定義ファイルなので、
デフォルトから変更しないと知らない人にプロクシが使われてしまう可能性がある。
ファイル名のclubh.propertiesのうち、
clubhの部分がユーザー名なので任意のものに変更。
パスワードだけ設定を変更して保存。
ここでは画像の画質の設定も変更できる。

3.起動スクリプトを作成
以下のものを/etc/rc.d/init.d/airproxyとして保存
#!/bin/sh
cd /usr/local/airproxy
nohup /usr/java/jdk1.5.0_09/bin/java -jar airproxy.jar &
exit 0
起動時に自動起動したい場合はrc2.dにシンボリックリンクを作成
#ln -s /et/crc.d/init.d/airproxy /etc/rc2.d/S99airproxy

4.W-ZERO3[es]のブラウザに設定する
Operaのオプション設定で、
プロクシのところにホスト名:ポート番号を入れる。

どこかWebサイトを開いて、
パスワードが要求されたあとに画像が粗くなって表示されればOK。

体感速度としては結構よくなった感じ。
mixiのような画像がたくさんあるサイトなんかは、
表示が早くなっていい。

画像の設定は、これからなにが最適かいろいろ試してみたいと思う。

apache 2.2 と tomcat 5.5 の連携

  • Posted by: Jay
  • Linux

apache2.2と、tomcatのインストールはすんなりいったのだが、
連携させようとしてmod_jk2をインストール後、
apacheを起動するとこんなエラーが出てapacheが起動できない。

httpd: Syntax error on line 466 of /usr/local/apache2/conf/httpd.conf: Cannot load /usr/local/apache2/modules/mod_jk2.so into server: /usr/local/apache2/modules/mod_jk2.so: undefined symbol: apr_pool_get_parent

ちょっと調べてみたら、
apache2.2からmod_jk2を使うのではなく、
mod_proxy_ajpというapache標準のモジュールを使うようになった。

今まではmod_proxy_ajpを使ってなかったので、
以下のconfigureオプションを追加して、

--enable-proxy --enable-proxy_ajp
apacheをコンパイルし直してインストール。

これだけでapache2.2とTomcatの連携が出来た。

例えば以下の内容をhttpd.confに追加すると、
apacheからサンプルページが表示される。

http://soph.jp/jsp-examples/

<Location /jsp-examples/>

ProxyPass ajp://localhost:8009/jsp-examples/

</Location>

apache 2.2.2 インストール

  • Posted by: Jay
  • Linux

apache 2.2系がリリースされて、そろそろ入れてもいいかなと思い、
2.0.58からアップグレードすることにした。

現在の最新バージョン2.2.2のソースをダウンロード
http://ftp.kddilabs.jp/infosystems/apache/httpd/httpd-2.2.2.tar.gz

解凍後以下のオプションでconfigure
$ ./configure --enable-dav --enable-headers --enable-so --enable-ssl --enable-auth-digest --with-mpm=worker --enable-cache --enable-disk-cache --enable-mem-cache

そうするとエラーメッセージでconfigureが完了できない。

configure: error: APR version 1.2.0 or later is required
APRってなんだろう?

知らなかったのだが、調べてみるとすぐに見つかった。
Apache Portable Runtime

http://apr.apache.org/

とりあえずインストールしてみる。
ソースをダウンロード
http://ftp.kddilabs.jp/infosystems/apache/apr/apr-1.2.7.tar.gz
解凍後、
$ ./buildconf
$ ./configure
$ make
$ make test
# make install

ライブラリが追加されたので、/etc/ld.so.conf に以下の行を追加。

/usr/local/apr/lib
追加後 ldconfig を実行

再度ソースを解凍したディレクトリに戻ってconfigure
今度はこんなエラーが
configure: error: APR-util version 1.2.0 or later is required

apr-util 1.2.7 をインストールする。
ここからソースをダウンロード
http://ftp.kddilabs.jp/infosystems/apache/apr/apr-util-1.2.7.tar.gz

$ ./buildconf --with-apr=../apr-1.2.7(aprのソースディレクトリ)

$ ./configure --with-apr=/usr/local/apr/(aprのインストールディレクトリ)

$ make

$ make test

# make install
httpdのソースディレクトリに戻って再度configure
今度は問題なく通った。
$ make
# make install

インストール完了後
/etc/init.d/httpd start
で起動しようとすると、こんなエラーメッセージが。

The startssl option is no longer supported.
Please edit httpd.conf to include the SSL configuration settings
and then use apachectl start.
/etc/init.d/httpdを編集して、startsslをstartに変更

改めて起動
/etc/init.d/httpd start
またエラーメッセージ
module' in file /usr/local/apache2/modules/mod_encoding.so is garbled - perhaps this is not an Apache module DSO?

mod_encodingを再コンパイルしないといけないようだ。
2.0系に対応しているものだとそのままではコンパイルエラーになってしまうので、
こちらにあるパッチを適用してコンパイル。

--- mod_encoding.c.2 Sat Dec 24 12:32:09 2005

+++ mod_encoding.c Sat Dec 24 12:34:24 2005

@@ -75,8 +75,8 @@

#include %3chttp_protocol.h%3e

#include %3chttp_request.h%3e

/* #include %3cap_compat.h%3e */

-

-#include %3ciconv_hook/iconv.h%3e

+#include %3cregex.h%3e

+#include %3ciconv.h%3e



/**

* Core part of the module.

phpも再コンパイルしないといけなかったので、
コンパイルしてインストールした。

これで無事起動が出来るようになった。

apache2.2の新機能の一つである、ドキュメントキャッシュ機能の設定をする。
@IT : Apache 2.2でWebサイトをパフォーマンスアップ!(2/3)
ここを参考にhttpd.confを編集


#ディスクキャッシュを用いる場合

CacheRoot /usr/local/apache2/cache #キャッシュデータの保管先
CacheEnable disk / #キャッシュ対象URL
CacheDirLevels 5 #キャッシュデータを保管するディレクトリ階層の深さ
CacheDirLength 3 #キャッシュデータを保管するディレクトリ名の文字数

#メモリキャッシュを用いる場合

CacheEnable mem / #キャッシュ対象URL
MCacheSize 4096 #キャッシュメモリの最大値(bytes)
MCacheMaxObjectCount 100 #キャッシュに保管するドキュメントの最大数
MCacheMinObjectSize 1 #キャッシュに保管するドキュメントの最小サイズ(bytes)
MCacheMaxObjectSize 2048 #キャッシュに保管するドキュメント1つ当たりの最大値(bytes)

実際にはサイトでキャッシュさせたいディレクトリに設定したのだが、
これでキャッシュ機能も使えるようになった。
効果のほどはよく分からないけど…

思ったよりも手こずってしまい、3時間ぐらいかかってしまった。

Qmail-Scanner Statistics (QSS) インストール(失敗)

  • Posted by: Jay
  • Linux

Qmail-Scanner Statistics

* cd /usr/local/www/
* mkdir qss; cd qss
* download tar archive from: http://sourceforge.net/projects/qss/
* tar -xzf qss-2.0.2.tar.gz
* vi config.php
ログファイルの設置場所を指定する。
$config["logFile"] = "ログファイルのフルパス"

このままだとログファイルに読み取り権限がないので、
qss.shを作成して、cronで1時間おきに実行する。

#!/bin/bash
cp -f /var/spool/qmailscan/quarantine.log
chown /quarantine.log
crontab -e
以下の行を追加
0 * * * * qss.shのフルパス
設定はこれで完了…のはずだったが、
実際にページを開いてみると、ログファイルの内容が反映されていない模様

ググってみると、qmail-scannerのログ形式が1.20で変更になったが、
それがQSSには反映されていない模様。
index.phpを変更すればいいそうなので、変更してみる。

元ネタはこちら

これで修正したものの、やはりログの解析がされていない。
qmail-scanner が2.00だからだろうか。
引き続き調べてみたいと思う。

Nagios + qmail でアラートが送信されない

  • Posted by: Jay
  • Linux

Nagios 2.04b4のインストール自体はうまくいったのだが、
テストで監視対象機器を落としてアラートを送信させると、
epagerで送信する先には正常に送信されない。

epagerには携帯のアドレスを仕込んでいるのだが、
普通通りサーバーから携帯に送信すると受信できるので携帯キャリア側の受信制限ではなさそう。
以前同じような事があったので修正したことを思い出し、
コマンドが記述されているmisccommands.cfgを見てみると、
/bin/mailを使って送信している模様

misccommands.cfg


56行目〜60行目

# 'notify-by-epager' command definition

define command{
command_name notify-by-epager
command_line /usr/bin/printf "%b" "Service: $SERVICEDESC$\nHost: $HOSTNAME$\nAddress: $HOSTADDRESS$\nState: $SERVICESTATE$\nInfo: $SERVICEOUTPUT$\nDate: $LONGDATETIME$" | /bin/mail -s "$NOTIFICATIONTYPE$: $HOSTALIAS$/$SERVICEDESC$ is $SERVICESTATE$" $CONTACTPAGER$

}

70行目〜74行目
# 'host-notify-by-epager' command definition
define command{
command_name host-notify-by-epager
command_line /usr/bin/printf "%b" "Host '$HOSTALIAS$' is $HOSTSTATE$\nInfo: $HOSTOUTPUT$\nTime: $LONGDATETIME$" | /bin/mail -s "$NOTIFICATIONTYPE$ alert - Host $HOSTNAME$ is $HOSTSTATE$" $CONTACTPAGER$
}

ファイルを編集して、qmail-injectを使うように変更
xxxx@soph.jpは送信者のアドレスに設定する様に変更して使用。

56行目〜60行目
# 'notify-by-epager' command definition
define command{
command_name notify-by-epager
command_line /usr/bin/printf "Return-Path: <xxxx@soph.jp>\nFrom: Nagios<xxxx@soph.jp>\nTo: $CONTACTPAGER$\nSubject: Service: $SERVICEDESC$\n\nHost: $HOSTNAME$\nAddress: $HOSTADDRESS$\nState: $SERVICESTATE$\nTime: $LONGDATETIME$\n\nAdditional Info:\n$HOSTOUTPUT$\n" | /var/qmail/bin/qmail-inject
}

70行目〜74行目
# 'host-notify-by-epager' command definition
define command{
command_name host-notify-by-epager
command_line /usr/bin/printf "Return-Path: <xxxx@soph.jp >\nFrom: Nagios<xxxx@soph.jp >\nTo: $CONTACTPAGER$\nSubject: $NOTIFICATIONTYPE$ alert - Host $HOSTNAME$ is $HOSTSTATE$\n\nTime: $LONGDATETIME$\n\nAdditional Info:\n$HOSTOUTPUT$\n" | /var/qmail/bin/qmail-inject
}

これでテストすると、問題なく携帯にも送信が出来た。

送信されるメールはこんな感じ

From: Nagios <xxxx@soph.jp>
To: xxx@ezweb.ne.jp
Subject: RECOVERY alert - Host soph.jp is UP

Time: Wed Oct 19 18:38:55 JST 2005
Additional Info:
PING OK - Packet loss = 0

Nagios 2.04b4

  • Posted by: Jay
  • Linux

Nagios がベータ版ながら 2.04b4までアップグレードされていた。
まずは試験環境(このサーバー)にインストールして評価することに。

前に参考にしたサイトが分からなくなったので、このサイトを参照した。
【コラム】Yet Another 仕事のツール 第75回 Nagiosでネットワークを監視する (MYCOM PC WEB)

1.2の時にインストールした時と、インストール方法は変わらない。
Nagios公式サイトより2.04b4をダウンロード
解凍してインストールといった具合。

SquirrelMail でエラー

  • Posted by: Jay
  • Linux

Courier-imapを4.0.4から4.0.6にアップデートすると、
SquirrelMailにログインしたときにエラーが出て、
メールの内容が見れなくなった。

エラーメッセージはこんな感じ
Error: Fatal error: Only variables can be passed by reference in /usr/local/apache2/htdocs/squirrelmail/functions/imap_messages.php on line 480

vsftpd

  • Posted by: Jay
  • Linux

TypeMoverでMovableTypeのデータ全体のバックアップを取りたくなって、
インストールしてみた。
プラグインのインストールはpluginディレクトリにつっこむだけだったので
非常に簡単だったが問題が一つあった。
自分のサーバーにはftpサーバーをインストールしていなかった。
ものは試しにインストールすることにした。

Dell PowerEdge 1800

  • Posted by: Jay
  • Linux

自宅にサーバーを設置してから早4年。

ゴールデンウィークに引っ越しするのとほぼ同時に、
Dellのサーバーを新しくしてみた。
以前使っていたのはPowerEdge1400だったのでサイズはかなり大きくなったが、
ファンの音が小さいのに感動!

1400の時は一定の音で結構大きかったのだが、
1800はケース内の温度によって回転数が変わるので、
気温が高くならなければそんなにファンが回らない。
それに、ファンが大きいので回転音自体も小さく感じる。

サイズは大きいけれど自宅サーバーにかなりおすすめ。

OSはRedHatEnterpriseLinuxのクローンである、
CentOSをインストールした。
RaidカードのPERC4/SCのドライバも入っていて、すんなりインストールできた。

Dell PowerEdge 1800

Index of all entries

Home > Computer > Linux Archive

Search

Feeds

Return to page top