cacti 若硬碟資料寫入100%會造成無法產生圖示,刪除檔案後資料庫也異常的處理方法
先檢查硬碟空間
df -h
若是想要看詳細自動排列大小 #du --exclude="proc" | sort -g 排在越後面的佔用磁碟空間越多
#du -csh 查看某個資料夾所佔的空間容量
一開始看到httpd底下的檔案很大,可以用以下方法解決
cp /dev/null /var/log/httpd/error_log
再來檢查cacti的網頁目錄底下的log發現有快4 G 就直接全刪了
cd /var/www/html/log rm -rf *
可以設定排程讓目錄的檔案自已刪除
crontab -e
10 1 * * * (cd /var/www/html/log;find . ! -name . -type f -mtime +2 -print -exec rm -f {} \;) 1>/dev/null 2>&1
每天凌晨 1:10 把 /var/www/html/log 內超過兩天的舊檔砍掉,6 個月就改用 -mtime +180
其餘細節請用 man find 及 man crontab 查詢。
根據你檔案的 Naming Rule 也可以倒算日期依檔名來判斷,不過我想不會比較簡單。
PS:
如果你不用 crontab 那更簡單:
cd /var/www/html/log
find . ! -name . -type f -mtime +2 -print -exec rm -f {} \;
上面的動作都弄完時發現圖表還是不會正常產生時,請照著以下的動作修復mysql即可
cacti 安裝時不會問你安裝的mysql密碼,因為它為隨機產生 檔案的位子是在 /root/mysqlpass.txt
修復資料的指令如下
mysql -u root -p 進入mysql後下的語句 mysql> show databases; mysql> user cacti; mysql> truncate table poller_output; mysql> select count(*) from poller output;
如果要看syslog的表格如下
mysql> show databases; mysql> use syslog ; mysql> show tables;