checking checking for perl module 'RRDs'... Failed
checking checking for perl module 'FCGI'... Ok
checking checking for perl module 'CGI'... Ok
checking checking for perl module 'CGI::Fast'... Ok
checking checking for perl module 'Config::Grammar'... Failed
checking checking for perl module 'Digest::HMAC_MD5'... Failed
checking checking for perl module 'LWP'... Ok
** Aborting Configure ******************************
If you know where perl can find the missing modules, set
the PERL5LIB environment variable accordingly.
FIRST though, make sure that 'perl' starts the perl
binary you want to use for SmokePing.
Now you can install local copies of the missing modules
by running
./setup/build-perl-modules.sh /usr/local/smokeping/thirdparty
The RRDs perl module is part of RRDtool. Either use the rrdtool
package provided by your OS or install rrdtool from source.
If you install from source, the RRDs module is located
PREFIX/lib/perl
先解决”checking checking for perl module ‘RRDs’… Failed”的问题,由于我们是编译安装的rrdtool,所以perl没找到默认路径下它的模块,需要手工拷贝过去
6.0 32位
cp /usr/local/rrdtool/lib/perl/5.10.1/i386-linux-thread-multi/RRDs.pm /usr/lib/perl5/
cp /usr/local/rrdtool/lib/perl/5.10.1/i386-linux-thread-multi/auto/RRDs/RRDs.so /usr/lib/perl5/
6.5 64位
cp /usr/local/rrdtool-1.3.6/lib/perl/5.10.1/x86_64-linux-thread-multi/auto/RRDs/RRDs.so /usr/lib64/perl5/
cp /usr/local/rrdtool-1.3.6/lib/perl/5.10.1/x86_64-linux-thread-multi/RRDs.pm /usr/lib64/perl5/
CentOS5.9
cp /usr/local/rrdtool/lib/perl/5.8.8/i386-linux-thread-multi/RRDs.pm /usr/lib/perl5/5.8.8/i386-linux-thread-multi/
cp /usr/local/rrdtool/lib/perl/5.8.8/i386-linux-thread-multi/auto/RRDs/RRDs.so /usr/lib/perl5/5.8.8/i386-linux-thread-multi/
下面的几个模块在错误提示中已经提到解决办法,运行以下指令就会自动下载安装了
./setup/build-perl-modules.sh /usr/local/smokeping/thirdparty
装完之后,重新运行下面指令
./configure --prefix=/usr/local/smokeping
gmake install
配置smokeping
cd /usr/local/smokeping/
mkdir cache data var
chown apache.apache cache data var
cd /usr/local/smokeping/htdocs/
cp smokeping.fcgi.dist smokeping.fcgi
cd /usr/local/smokeping/etc/
cp config.dist config
chmod 400 /usr/local/smokeping/etc/smokeping_secrets.dist
ln -s /usr/local/smokeping/cache /usr/local/smokeping/htdocs/cache
修改/usr/local/smokeping/etc/config
vi /usr/local/smokeping/etc/config
找到binary = /usr/sbin/fping
修改为binary = /usr/local/sbin/fping
/usr/local/sbin/fping
修改/usr/local/smokeping/bin/smokeping
vi /usr/local/smokeping/bin/smokeping
找到:use lib qw(); # PERL5LIB
修改为:use lib qw(/usr/local/rrdtool/lib/perl); # PERL5LIB
修改主机配置文件,增加自己的主机,如果只想测试就把host改成自己要检测的IP就行了
+ Test
menu= Targets
#parents = owner:/Test/James location:/
++ James
menu = James
title =James
alerts = someloss
slaves = boomer slave2
host = james.address
++ MultiHost
menu = Multihost
title = James and James as seen from Boomer
host = /Test/James /Test/James~boomer
创建开机自动运行脚本
vi /etc/rc.local
写入如下内容
nohup /usr/local/smokeping/bin/smokeping --logfile=/var/log/smokeping.log 2>&1 &
修改apache配置文件
Alias /smokeping/ "/usr/local/smokeping/htdocs/"
<Directory "/usr/local/smokeping/">
AllowOverride None
Options All
AddHandler cgi-script .fcgi .cgi
Order allow,deny
Allow from all
DirectoryIndex smokeping.fcgi
</Directory>
最后重器apache服务,运行
nohup /usr/local/smokeping/bin/smokeping –logfile=/var/log/smokeping.log 2>&1 &
打开浏览器输入http://smokeping-ip/smokeping/即可访问