Cacti 是基於 RRDtool 的網絡流量監控圖形化工具。本文記錄在 CentOS/RHEL 上從源碼編譯安裝完整棧的步驟,含依賴處理、數據庫初始化、Web 配置及常見坑點。
yum -y install httpd mysql-server php php-mysql mysql-devel yum -y install cairo-devel libxml2-devel pango-devel gcc
tar zxvf rrdtool-1.4.7.tar.gz cd rrdtool-1.4.7 ./configure --prefix=/usr/local/rrdtool make && make install ln -s /usr/local/rrdtool/bin/* /usr/local/bin/
tar zxvf net-snmp-5.6.1.1.tar.gz cd net-snmp-5.6.1.1 ./configure --prefix=/usr/local/net-snmp make && make install cp EXAMPLE.conf /etc/snmpd.conf # 編輯 /etc/snmpd.conf 取消註釋:rocommunity public localhost /usr/local/net-snmp/sbin/snmpd -c /etc/snmpd.conf echo "/usr/local/net-snmp/sbin/snmpd -c /etc/snmpd.conf" >> /etc/rc.local
tar zxvf cacti-0.8.7i-PIA-3.1.tar.gz mv cacti-0.8.7i-PIA-3.1/* /var/www/html/ chown -R apache:apache /var/www/html/
mysql -uroot -p
CREATE DATABASE cacti;
INSERT INTO mysql.user (Host,User,Password) VALUES ('localhost','cacti',PASSWORD('123456'));
FLUSH PRIVILEGES;
GRANT ALL ON cacti.* TO 'cacti'@'localhost' IDENTIFIED BY '123456';
quit
mysql -ucacti -p123456 cacti < /var/www/html/cacti.sql
/var/www/html/include/config.php$database_type = "mysql"; $database_default = "cacti"; $database_hostname = "localhost"; $database_username = "cacti"; $database_password = "123456"; $database_port = "3306";
瀏覽器訪問 https://IP/install/,按提示完成安裝(檢查 PHP 擴展、目錄權限、模板路徑等)。
service httpd start service mysqld start chkconfig httpd on chkconfig mysqld on
登錄 Cacti(默認 admin/admin),添加設備、創建圖形樹、配置數據源,即可開始監控。
sockets 擴展未啟用 → 修改 php.ini 載入 extension=sockets.so。gcc、cairo-devel、pango-devel 已安裝。snmpd.conf 社區字符串、SELinux。後續可接入更多設備、自定義模板、配置告警,構建完整監控體系。
Linux 環境變數設定檔完整架構:系統級 vs 使用者級、登入 vs 互動式 Shell 載入順序圖解
Linux Shell 判斷結構全解析:test、[ ]、[[ ]]、(( )) 與 let
Linux 壓縮解壓指令大全:tar、gzip、bzip2、zip、rar 等完整語法速查表
Azure 雲端部署 Nginx 完整實戰:從原始碼編譯到生產優化
Linux exit 指令:登出 Shell 與結束腳本的正確姿勢
Linux sort 命令深度解析:核心參數、鍵值排序、穩定排序與實戰案例