2014-06-14 38 views
2

我最近在我的(基於Fedora的)服務器上安裝了munin。現在,我想要將所有圖表都放在靜態目錄中(應用程序在Django上運行)。所以,我通過將htmldir設置爲靜態文件夾的絕對路徑來編輯文件\etc\munin\munin.conf。然後,當我做了munin-cron,我得到了以下錯誤:Munin無法在運行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. 

於是,我改變了用戶,並試圖運行相同與穆寧爲用戶。然後我得到了以下錯誤:

[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靜態目錄(遞歸的穆寧用戶),甚至與chmod 777嘗試(實際上不應該做的),所以基本上沒有關係」似乎是一個許可問題。

此外,我的開發服務器是基於Ubuntu(12.04)的。它在那裏運行得很好。即使使用運行Ubuntu的本地機器(14.04),它也能正常工作。這可能是一個操作系統問題?這似乎不太可能。我還有什麼可以遺漏的東西?任何幫助,將不勝感激。

PS:還有一個問題。當我跑munin-cron在我的Ubuntu(一個或多個)根,它給了錯誤是:

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這裏。它可能是一個配置問題?

回答

0

我在CentOS 6.5上有同樣的問題。沒有可能的權限解決這個問題所以我必須代表munin用戶在root的crontab下運行cron。聽起來很瘋狂,但它的工作原理:

  • 觸發cron的下根的crontab:
    • /etc/sudoers
一下添加到根的crontab */5 * * * * sudo -u munin crontab -e
  • 註釋掉該行Defaults requiretty