サーバ管理ツール Plesk アップデートエラー対処法

サーバ管理ツールである Parallels Plesk Panel をバージョン 8.6.0 から 9.x.x にアップデートすると、管理画面にアクセスできなくなった。届いてるメールは「Plesk autoupdate success report」だけど。

メールの内容をみると、Plesk の起動に失敗している。

Trying to start Plesk...
Stopping Plesk... done
Starting xinetd service... done
Starting named service... done
Starting mysqld service... done
Starting postgresql service... done
Starting psa-spamassassin service... done
Plesk: Starting Mail Server... already started
Starting Plesk... failed
Starting drwebd service... failed

再びサービスを開始しても同じに。

$ /etc/rc.d/init.d/psa start

ログをみると、どうやら SSL でエラーになっているようだ。

$ tail /var/log/sw-cp-server/error_log
2010-10-24 18:44:44: (log.c.75) server started
2010-10-24 18:50:27: (log.c.135) server stopped
2010-10-24 18:50:34: (log.c.75) server started
2010-10-24 18:50:34: (network.c.336) SSL: error:00000000:lib(0):func(0):reason(0)
2010-10-24 18:50:34: (log.c.75) server started
2010-10-24 18:50:34: (network.c.336) SSL: error:00000000:lib(0):func(0):reason(0)

対処方法は、Latest update of openssl breaks Parallels Panel を参考にパッケージをインストール。

$ wget -c http://kb.parallels.com/Attachments/12669/Attachments/sw-cp-server-1.0-6.201004011105.centos5.i386.rpm
$ rpm -Uhv sw-cp-server-1.0-6.201004011105.centos5.i386.rpm
$ /etc/rc.d/init.d/psa start
startStarting xinetd service... done
Starting named service... done
Starting mysqld service... done
Starting postgresql service... done
Starting psa-spamassassin service... done
Plesk: Starting Mail Server... already started
Starting Plesk... done
Starting drwebd service... done

と無事に Plesk が起動して管理画面にアクセスできるようになった。

関連サイト

ログ監視ツール Logwatch を使ってみる

2018.2.20追記: Logwatchのコマンドが変わっていたので、書き直しました。ログ監視ツール Logwatch を使ってみる (アップデート版)

Logwatch は、いろいろなログをまとめて集計し、レポートとして毎日定期的にメールで届けてくれる。不正アクセスや不具合の発見とサーバの監視に便利なツール。

Logwatch のインストール

Logwatch は Perl で書かれていて Perl 5.8 が必要です。

yumからのインストールは、

$ yum install logwatch

で、

ソースからのインストールは、こちらから

Logwatch をインストールした時点で cron に登録されているので、毎日4時2分になると Logwatch のスクリプト (/etc/cron.daily/0logwatch) が実行されてレポートが届く。

logwatch の設定

logwatch の設定は、/usr/share/logwatch/default.conf/logwatch.conf を編集する。標準設定のままで十分ですが、以下の項目を確認して設定。

#ログが保存されているディレクトリ
LogDir = /var/log
#メールの送信先
MailTo = user@hoge.com
#アーカイブされたログも含めるかどうか
Archives = Yes
#レポートの日付範囲を3つのオプションから。All, Today, Yesterday
Range = Yesterday
ログの詳細度、Low (=0), Med (=5), High (=10) または 0から10までの数字で
Detail = High
# チェックの対象となるサービスを /usr/share/logwatch/scripts/services/ 以下、あるいは All で指定。
Service = All
# メールコマンドパス
mailer = "sendmail -t"

サービスごとの個別設定は、/usr/share/logwatch/default.conf/services/ に用意されている。各サービスの設定ファイルを編集することで個別設定できる。

logwatch コマンドを使ってみる

標準出力

logwatch --print

特定のサービスだけ出力

logwatch --print --service http

複数のサービスにも

logwatch --print --service http --service sshd

ログの詳細度を変えてみる

logwatch --print --detail 10 --service http

メールに出力

logwatch --mailto user@hoge.com

ファイルに出力

logwatch --save /path/to/logwatch.txt

関連サイト

文字列を一括置換するSQL文 – 文字列関数 REPLACE()

SQL で文字列を置換するには、文字列関数 REPLACE() を使います。置換対象にマッチした文字列を置換後の文字に置き換えます。

SELECT REPLACE(カラム名,'置換対象','置換後の文字') FROM テーブル名;

置換対象は、大文字小文字を区別します。マルチバイトも可能。

以下の UPDATE 文で指定したカラム名の文字列を対象に一括置換ができます。

UPDATE テーブル名 SET カラム名=REPLACE(カラム名,"置換対象","置換後の文字");

Net::Twitter が突然動かなくなったら (備忘メモ)

Net::Twitter が突然動かなくなった。なかなか気づかないエラーなので備忘メモ。

weaken is only available with the XS version of Scalar::Util at /usr/lib/perl5/site_perl/5.8.8/i386-linux-thread-multi/Class/MOP.pm line 12
BEGIN failed--compilation aborted at /usr/lib/perl5/site_perl/5.8.8/i386-linux-thread-multi/Class/MOP.pm line 12.
Compilation failed in require at /usr/lib/perl5/site_perl/5.8.8/i386-linux-thread-multi/Moose/Exporter.pm line 11.
BEGIN failed--compilation aborted at /usr/lib/perl5/site_perl/5.8.8/i386-linux-thread-multi/Moose/Exporter.pm line 11.
Compilation failed in require at /usr/lib/perl5/site_perl/5.8.8/i386-linux-thread-multi/Moose.pm line 14.
BEGIN failed--compilation aborted at /usr/lib/perl5/site_perl/5.8.8/i386-linux-thread-multi/Moose.pm line 14.
Compilation failed in require at /usr/lib/perl5/site_perl/5.8.8/Net/Twitter.pm line 2.

先頭に

weaken is only available with the XS version of Scalar::Util

とある。どうやら yum update で XS 版から Pure Perl 版の Scalar::Util に入れ替わったようだ。

weaken で Cコンパイラが使えないとエラーになって、Net::Twitter が玉突きのようなエラーに。

ということで、XS 版 Scalar::Util を再インストール。

$ sudo cpan
cpan> look Scalar::Util

でビルドディレクトリを作成して移動。オプション (-XS) を指定して Makefile を作成後、Scalar::Util をインストール。

$ perl Makefile.PL -XS
$ make
$ make test
$ make install

Complete!!

関連サイト

yum コマンドリファレンス

yum (Yellowdog Updater Modified) は、Red Hat Linux や Fedora Core、CentOS などRPM系Linuxディストリビューションで使われるパッケージ管理システム。ソースコードのダウンロードしてインストールしたり、アップグレードや削除、パッケージ間の依存関係の解決とパッケージを管理できます。サーバの運営には欠かせないツールの一つ。

コマンドリファレンス

インストールできるパッケージの一覧表示

$ yum list available

パッケージをインストール

$ yum install パッケージ名

インストールしたパッケージの一覧表示

$ yum list installed

アップデートできるパッケージの一覧表示

$ yum list updates

または、

$ yum check-update

パッケージのアップデート

$ yum update パッケージ名

インストールしたパッケージすべてをアップデート

$ yum update

メッセージが表示され、確認後アップデート。
メッセージの確認を行わない場合は、

$ yum -y update

パッケージのアンインストール

$ yum remove パッケージ名

パッケージの検索

$ yum search キーワード

パッケージの詳細情報を表示

$ yum info パッケージ名

パッケージに含まれるファイルの一覧表示

$ yum provides パッケージ名

最近追加したパッケージの一覧表示

$ yum list recent

キャッシュクリア

ダウンロードしたパッケージは /var/cache/yum/ に溜まっていきます。

$ du -sh /var/cache/yum/

で容量を確認して、

$ yum clean all

で、ダウンロード済みのパッケージや古いヘッダなどキャッシュを削除。all の他、headers, packages, metadata, dbcache, plugins, expire-cache のオプションで対象も指定できる。

システムにインストールされているパッケージ (Extra Packages) の一覧表示

$ yum list extras

関連サイト

最近の投稿

カテゴリー

アーカイブ