我最近在我的(基于Fedora12的)服务器上安装了munin。 现在,我想把所有的图表都放在一个静态目录中(应用程序在Django上运行)。 所以,我编辑文件/etc/munin/munin.conf通过设置htmldir作为我的静态文件夹的绝对path。 然后,当我做了一个munin-cron ,我得到了以下错误:
This program will easily break if you run it as root as you are trying now. Please run it as user 'nobody'. The correct 'su' command on many systems is 'su - munin --shell=/bin/bash' Aborting.
所以,我改变了用户,并尝试运行与用户一样的munin 。 然后我得到以下错误:
[ERROR] Could not copy contents from /etc/munin/static/ to /[path to static file] at /usr/share/perl5/vendor_perl/Munin/Master/HTMLOld.pm line 716.
我chown -ed静态目录(对于munin用户recursion),甚至尝试用chmod 777 (实际上不应该这样做),所以基本上它似乎不是一个权限问题。
另外,我的开发服务器是基于Ubuntu(12.04)的。 它在那里工作得很好。 即使我运行Ubuntu的本地机器(14.04)也能正常工作。 这可能是一个操作系统的问题? 这似乎不太可能。 还有什么我可以错过? 任何帮助,将不胜感激。
PS:还有一个问题。 当我在Ubuntu(s)中以root身份运行munin-cron ,它给出的错误是:
This program will easily break if you run it as root as you are trying now. Please run it as user 'munin'. The correct 'su' command on many systems is 'su - munin --shell=/bin/bash' Aborting.
而这里nobody 。 它可能是一个configuration问题?
我的munin版本是2.0.16。
你不应该运行“root”用户的munin-cron。
尝试运行这个命令:
chown -R munin:munin /var/www/munin
在这之后,尝试从“munin”用户处运行“munin-cron”。
首先:
您只能以用户munin的身份运行munin-cron ,所以不能以root身份运行它。
日志文件中有几个更多的细节?
在我的Ubuntu系统上,他们在/var/log/munin/
在你的Fedora服务器上运行哪个版本的Munin runnig? Maby在Munin的一个Bug?
你可以用su - munin --shell=/bin/bash改成Munin用户
使用munin-cron -v显示版本号
第一行是类似于munin version 1.4.6.
这适用于我(Ubuntu 10.04 / 12.04 / 14.04)。
Munin有五个二进制他们一起工作:
munin-update – 收集数据
munin-graph – 创buildgraphics
munin-limits – 检查服务是否严重/警告(如果已configuration)
munin-html – build立HTML页面
munin-cron – 打电话给其他的二进制文件
所以如果你(或者你的Cronjob)打电话给munin-cron所有的二进制文件都是她的一部分。
每个二进制文件写入他自己的日志文件(在/var/log/munin/ ),由二进制文件命名。
看看日志文件,也许你会看到哪一个失败。
日志文件经常包含更多的信息作为“错误代码”。
我知道这有点晚,但是我在Google上search这个问题时发现了这个问题,所以也许可以帮助人们。
当运行munin-check不报告任何错误时,我通过以munin身份进入一个shell所发现的是,父目录对munin stats html文件夹的权限是错误的。 尝试input一个shell为munin,然后使用cd进入nginx stats文件夹。
我做到了这一点:
sudo su - munin --shell=/bin/bash cd /var/www/html/stats/ #stats directory under apache2 on my system
我得到这个消息:
-bash: cd: /VAR/: Permission denied
然后我意识到/var/www/html/本身并不能被munin访问。 当我修复这个权限时,一切正常。 (我使用了755,但是这可能是不安全的,这取决于你的系统是如何设置的或者你在nginx文件夹中有什么)。
我通过将用户munin添加到nobody (与apache的组相同)并设置munin目录由nobody组写入来解决了这个错误:
chmod -R g+w /usr/local/apache/htdocs/munin
错误停止。 graphics开始再次出现。