管理しているサーバで yum update をした。特に問題がなさそうなのでアップデートした。
(念のためスレーブ系のをOFFにしておいた=元に戻せるように)
翌日、バックアップのためにFTPに接続したところ、バックアップファイルがなかった。
スポンサードリンク
SSHで調べてみると次のようになっていた。
※データベースバックアップシステムは自分で作ったスクリプト
[root@localhost ~]# perl /var/www/cron/db_backup.cgi
is only avaliable with the XS version at /usr/lib/perl5/site_perl/5.8.8/Compress/Zlib.pm line 9
BEGIN failed–compilation aborted at /usr/lib/perl5/site_perl/5.8.8/Compress/Zlib.pm line 9.
Compilation failed in require at /usr/lib/perl5/site_perl/5.8.8/Archive/Zip.pm line 11.
BEGIN failed–compilation aborted at /usr/lib/perl5/site_perl/5.8.8/Archive/Zip.pm line 11.
Compilation failed in require at /var/www/cron/db_backup.cgi line 62.
BEGIN failed–compilation aborted at /var/www/cron/db_backup.cgi line 62.
Compress::Zlibがよろしくないということなので、CPANで何とか試みるがエラーが出る。
Use of uninitialized value in concatenation (.) or string at /usr/lib/perl5/5.8.8/i386-linux-thread-multi/Scalar/Util.pm line 30.
次のものでも同じようにエラーが出る。
– install Compress::Zlib
– install Bundle::LWP
– install Image::Magic
ネットで調べたところ、2007年にもyumで同様のエラーが出た報告があったので参考にした。
wget http://search.cpan.org/CPAN/authors/id/G/GB/GBARR/Scalar-List-Utils-1.19.tar.gz
tar zxvf Scalar-List-Utils-1.19.tar.gz
cd Scalar-List-Utils-1.19
perl Makefile.PL
make test install
2008/08/21追記
- install Scalar::Util
- force install Scalar::Util
上記のどちらかのコマンドでも対応できそうだ
CPANをリロードして問題のCompress::Zlibなどをアップデートしたところ問題は解決したようだ。
自作のスクリプトもエラーを出さなくなった。
[root@localhost ~]# perl /var/www/cron/db_backup.cgi
=== [ Start DataBase Backup Prosess ] ===
=> Try :/var/www/backup/2008-06-30.sql
=> Try : Compress Prosess
-> Source : /var/www/backup/2008-06-30.sql
-> Output : /var/www/backup/2008-06-30.sql.zip
-> Complete Status : [ O K ]
-> File Size Is : 49,829,140 Byte -> 7,411,975 Byte
=== [ End of Backup Prosess ] ===
参考文献
- CentOS 4.xのCPANエラー解決 – ケーズメモ :
はてなブログ | 無料ブログを作成しようはてなブログは、無料でしっかり書けるブログサービスです。日々の生活から感じたこと、考えたことを書き残しましょう。 - nDiki: 野良パッケージと依存 Perl モジュールのインストールセット をCPAN… (2006-02-11) :
野良パッケージと依存 Perl モジュールのインストールセット をCPAN::Site で - CPANエラー – rm -fr /* :
301 Moved Permanently
コメント