FreeBSD上Cacti安装


image

FreeBSD(http://www.freebsd.org)
Cacti(http://www.cacti.net/)

FreeBSD选择你喜欢的版本,我使用的是7.0版本(目前最新的是7.1版本)。FreeBSD的安装就不介绍了,我习惯于使用最小化安装,然后再安装自己需要的.安装的Cacti版本为0.87b。

FreeBSD最小化安装后,登陆后。

运行如下命令,配置ip地址和网关并启动sshd:

vi /etc/rc.conf

加入如下内容:

ifconfig_le0=”inet 192.168.42.100 netmask 255.255.255.0”
defaultrouter=”192.168.42.2”
sshd_enable=”YES”

注意:将土黄色的ip地址和网关修改为你自己实际的IP地址,保存退出。

运行如下命令,加入DNS服务器地址:

vi /etc/resolv.conf

加入如下内容:

nameserver 202.101.172.46
nameserver 202.101.172.35

注意:将土黄色的DNS服务器地址修改为你自己实际的IP地址,我这里用的是浙江电信的DNS服务器,保存退出。

运行如下命令,运行root使用ssh登陆:

vi /etc/ssh/sshd_config

直接加入如下代码:

PermitRootLogin yes

保存退出。

运行如下命令,获得Ports Collection:

csup -L 2 -h cvsup5.cn.FreeBSD.org /usr/share/examples/cvsup/ports-supfile

浙江电信的线路上cvsup5.cn.freebsd.org 速度最快,根据你的实际网络情况选择对应的cvsup服务器。我会提前编辑ports-supfile,将我不需要的ports都去掉。

等更新完成后,运行如下命令,安装cacti:

cd /usr/ports/net-mgmt/cacti

make install clean

根据你的选择,会自动安装上所有需要的模块。

等运行完成后,运行如下命令,安装mysql-server:

cd /usr/ports/databases/mysql50-server
make install clean

运行如下命令,配置apache和mysql的启动:

vi /etc/rc.conf

加入如下内容:

mysql_enable=“YES”
apache_enable=“YES”

保存退出。

运行如下命令,配置apache:

vi /usr/local/etc/apache/httpd.conf

找到如下内容:

LoadModule unique_id_module   libexec/apache/mod_unique_id.so

AddModule mod_unique_id.c

修改为:

#LoadModule unique_id_module   libexec/apache/mod_unique_id.so

#AddModule mod_unique_id.c

加入如下内容:

    Alias /cacti “/usr/local/share/cacti/”
   
        Options Indexes FollowSymlinks MultiViews
        AllowOverride None
        Order allow,deny
        Allow from all
   

保存退出。

运行如下命令,初始化Cacti:

/usr/local/etc/rc.d/mysql start
mysqladmin –user=root create cacti
echo “GRANT ALL ON cacti.* TO cactiuser@localhost IDENTIFIED BY ‘cactiuser’; FLUSH PRIVILEGES;” | mysql
mysql cacti < /usr/local/share/cacti/cacti.sql

运行如下命令,加入crontab:

vi /etc/crontab

加入以下代码:

*/5 * * * * cacti /usr/local/bin/php /usr/local/share/cacti/poller.php > /dev/null 2>&1

保存退出。

运行如下命令,修正Cacti的一个Bug:

vi +113 /usr/local/share/cacti/include/global.php

修改该行内容为:

//if (!((is_file($_SERVER[“SCRIPT_FILENAME”])) && (substr_count($_SERVER[“SCRIPT_FILENAME”], $_SERVER[“PHP_SELF”])))) {

即在该行前加入//,注释掉该行。然后在该行下加入如下内容:

if (!((is_file($_SERVER[“SCRIPT_FILENAME”])))){

保存退出。

运行如下内容,启动Apache:

/usr/local/etc/rc.d/apache start

ok。

打开浏览器,访问你设置的ip地址,我的例子中访问地址为:http://192.168.42.100/cacti/ 。跟随屏幕的指示即可,默认用户名/密码为:admin / admin。

comments powered by Disqus