博客园  :: 首页  :: 新随笔  :: 联系 :: 订阅 订阅  :: 管理

Cacti不出图

Posted on 2017-03-11 09:56  moss_tan_jun  阅读(521)  评论(0编辑  收藏  举报

http://os.51cto.com/art/201404/434915.htm
http://os.51cto.com/art/201109/289306.htm
http://freeloda.blog.51cto.com/2033581/1308807

1.system utilities -->Rebuild poller cache
2. 系统时间不准确,重新设置时间
3. 图像没有生成,运行 #/usr/bin/php /srv/www/htdocs/cacti/poller.php --force
4. 权限问题,修改权限 #chmod 777 -R /srv/www/htdocs/cacti/rra
5. 数据库表有损坏,修复 #mysqlcheck -ao cacti --auto-repair -uroot -p
6. 重启 snmpd 服务 #service snmpd restart
-------------------------------------------------------
原来运行正常的CactiEZ突然发现不出图了,打开图形时提示“图形文件不存在”,前往/var/www/html/rrd 发现没有一个文件生成,但cacti控制台时检查一切正常,以前曾经也出现过类似问题,是服务器时间被改了,这次是不是也是这个问题?telnet 到服务器发现时间没问题。


执行/usr/bin/php /var/www/html/poller.php


提示“文件大小超出限制”,判断为LOG文件太大,查看cacti.log已达2G,CP了一份后直接删除,再次执行/usr/bin/php /var/www/html/poller.php ,OK了


使用#rm -rf /var/www/html/log/cacti.log将日志删除

5.关于cacti下文件的权限问题。

    Cacti目录中的内容权限并不统一,而且权限要求的也很少,并不像其他的比如Nagios要求的那么多。我们可以简单的保持整个Cacti目录的属主和属组都是Cacti即可。但是有两个特殊的例外:
    第一个是cacti/rra目录,整个目录里的内容是RRD的画图文件自动在里面生成的。而生成之后里面文件的属主和属组到底是谁,取决最终是由哪个用户 来创建的,而这个就是在Cacti的那个crontab里控制,如果我们使用的是root用户添加的crontab,那么这个rra目录中的内容属主和属 组都是root。同理,如果我们的crontab是在cacti中设置的,那么rra目录中的内容属主和属组都是cacti。
    第二个目录是cacti/scripts目录,这里面存的大部分都是我们自定义的脚本,一定要确保里面的脚本是cacti用户可执行的。最好的检测方法就是su到cacti用户中,进入这个目录,手动运行一下脚本,查看脚本是否成功执行

 

 

 

 




使用#find / -name cacti.log查找cacti.log文件的位置


对于执行 [root@CactiEZ ~]# /usr/bin/php /var/www/html/poller.php  出现下面的PHP错误时如何解决?


PHP Warning:  date(): It is not safe to rely on the system's timezone settings. You are *required* to use the date.timezone setting or the date_default_timezone_set() function. In case you used any of those methods and you are still getting this warning, you most likely misspelled the timezone identifier. We selected 'Asia/Chongqing' for 'CST/8.0/no DST' instead in /var/www/html/include/global_constants.php on line 160


解决方法就是,在php.ini中加上date.timezone=PRC即可


[root@CactiEZ ~]# cp /etc/php.ini /etc/php.ini.bak
[root@CactiEZ ~]# vi /etc/php.ini


[PHP]
date.timezone = PRC #加上这句话,其他的部分不便
engine = On
short_open_tag = Off
asp_tags = Off
precision = 14
y2k_compliance = On
output_buffering = 4096
zlib.output_compression = Off
implicit_flush = Off


 


再次执行:[root@CactiEZ ~]# /usr/bin/php /var/www/html/poller.php