Графики кактусов не работают
Я пытался настроить Cacti на CentOS 6 с mariadb, nginx 1.4, php 5.4.x
Я просто не могу получить графики для обновления
Все мои файлы кактусов принадлежат пользователю nginx, поэтому мой файл crontab /etc/cron.d/cacti имеет
*/5 * * * * nginx /usr/bin/php -q /usr/share/nginx/html/cacti/poller.php > /var/local/log/poller.log 2>&1
Тем не менее, я вижу, что он запускается в журнале cron, но он не производит никаких выводов в poller.log и не обновляет cacti.log.
Oct 13 12:20:01 srv CROND[14644]: (nginx) CMD ( /usr/bin/php -q usr/share/nginx/html/cacti/poller.php > /var/local/log/poller.log 2>&1)
я могу бежать sudo -u nginx /usr/bin/php -q /usr/share/nginx/html/cacti/poller.php
и увидеть вывод, и, кажется, обновить .rrd
файлы. Кроме того, я запускаю это один раз sudo -u nginx php -q cli/rebuild_poller_cache.php
и каким-то образом я получил одну точку данных на графике, но я больше не мог даже вручную обновлять графики.
В cacti.log, похоже, нет ничего полезного (который обновляется только при запуске вручную). Я тоже ничего не видел в /var/log/secure
Что касается SELinux, но я, возможно, пропустил его (не уверен, что искать).
Где я должен искать это исправить? Почему cronjob не работает, даже если он работает? Как я могу получить графики для обновления снова?
Обновление: я думаю, что вижу проблему. Я не смотрел на разрешения для самой папки rra, только это символическая ссылка. Я постараюсь исправить это.
Права доступа к соответствующим файлам RRA:
$ lll /usr/share/nginx/html/cacti/rra
lrwxrwxrwx. 1 nginx nginx 18 Oct 12 23:21 /usr/share/nginx/html/cacti/rra -> /var/lib/cacti/rra
$ lll /usr/share/nginx/html/cacti/rra/
total 340
drwxr-xr-x. 2 cacti root 4096 Oct 13 00:32 .
drwxr-xr-x. 5 root root 4096 Oct 12 23:21 ..
-rw-r--r--. 1 nginx nginx 141640 Oct 13 12:12 localhost_load_1min_5.rrd
-rw-r--r--. 1 nginx nginx 47992 Oct 13 12:12 localhost_mem_buffers_3.rrd
-rw-r--r--. 1 nginx nginx 47992 Oct 13 12:12 localhost_mem_swap_4.rrd
-rw-r--r--. 1 nginx nginx 47992 Oct 13 12:12 localhost_proc_7.rrd
-rw-r--r--. 1 nginx nginx 47992 Oct 13 12:12 localhost_users_6.rrd
$ lll /var/lib/cacti/
total 20
drwxr-xr-x. 5 root root 4096 Oct 12 23:21 .
drwxr-xr-x. 38 root root 4096 Oct 12 23:21 ..
drwxr-xr-x. 2 root root 4096 Oct 12 23:21 cli
lrwxrwxrwx. 1 root root 24 Oct 12 23:21 include -> /usr/share/cacti/include
lrwxrwxrwx. 1 root root 20 Oct 12 23:21 lib -> /usr/share/cacti/lib
drwxr-xr-x. 2 cacti root 4096 Oct 13 00:32 rra
drwxr-xr-x. 2 root root 4096 Oct 12 23:21 scripts
Вот часть моего audit.log
(это очень повторяется)
[matt@srv ~]$ sudo cat /var/log/audit/audit.log | grep denied
type=AVC msg=audit(1381785901.286:31729): avc: denied { getattr } for pid=22067 comm="postdrop" path="/var/spool/postfix/public/pickup" dev=dm-0 ino=2224026 scontext=system_u:system_r:postfix_postdrop_t:s0-s0:c0.c1023 tcontext=unconfined_u:object_r:postfix_public_t:s0 tclass=sock_file
type=AVC msg=audit(1381786201.333:31742): avc: denied { getattr } for pid=22087 comm="postdrop" path="/var/spool/postfix/public/pickup" dev=dm-0 ino=2224026 scontext=system_u:system_r:postfix_postdrop_t:s0-s0:c0.c1023 tcontext=unconfined_u:object_r:postfix_public_t:s0 tclass=sock_file
type=AVC msg=audit(1381786501.374:31749): avc: denied { getattr } for pid=22114 comm="postdrop" path="/var/spool/postfix/public/pickup" dev=dm-0 ino=2224026 scontext=system_u:system_r:postfix_postdrop_t:s0-s0:c0.c1023 tcontext=unconfined_u:object_r:postfix_public_t:s0 tclass=sock_file
type=AVC msg=audit(1381786801.418:31762): avc: denied { getattr } for pid=22134 comm="postdrop" path="/var/spool/postfix/public/pickup" dev=dm-0 ino=2224026 scontext=system_u:system_r:postfix_postdrop_t:s0-s0:c0.c1023 tcontext=unconfined_u:object_r:postfix_public_t:s0 tclass=sock_file
type=AVC msg=audit(1381787101.450:31769): avc: denied { getattr } for pid=22151 comm="postdrop" path="/var/spool/postfix/public/pickup" dev=dm-0 ino=2224026 scontext=system_u:system_r:postfix_postdrop_t:s0-s0:c0.c1023 tcontext=unconfined_u:object_r:postfix_public_t:s0 tclass=sock_file
type=AVC msg=audit(1381787401.493:31782): avc: denied { getattr } for pid=22171 comm="postdrop" path="/var/spool/postfix/public/pickup" dev=dm-0 ino=2224026 scontext=system_u:system_r:postfix_postdrop_t:s0-s0:c0.c1023 tcontext=unconfined_u:object_r:postfix_public_t:s0 tclass=sock_file
type=AVC msg=audit(1381787701.543:31789): avc: denied { getattr } for pid=22188 comm="postdrop" path="/var/spool/postfix/public/pickup" dev=dm-0 ino=2224026 scontext=system_u:system_r:postfix_postdrop_t:s0-s0:c0.c1023 tcontext=unconfined_u:object_r:postfix_public_t:s0 tclass=sock_file
type=AVC msg=audit(1381788001.595:31800): avc: denied { getattr } for pid=22208 comm="postdrop" path="/var/spool/postfix/public/pickup" dev=dm-0 ino=2224026 scontext=system_u:system_r:postfix_postdrop_t:s0-s0:c0.c1023 tcontext=unconfined_u:object_r:postfix_public_t:s0 tclass=sock_file
1 ответ
Я должен был исправить разрешения для родителя каталогов symlink'd
/var/lib/cacti/rra
/var/log/cacti
Обратите внимание:
$ ll /usr/share/cacti/
total 868
...
lrwxrwxrwx. 1 nginx nginx 18 Oct 12 23:21 cli -> /var/lib/cacti/cli
...
lrwxrwxrwx. 1 nginx nginx 15 Oct 12 23:21 log -> /var/log/cacti/
...
lrwxrwxrwx. 1 nginx nginx 18 Oct 12 23:21 rra -> /var/lib/cacti/rra
...
lrwxrwxrwx. 1 nginx nginx 22 Oct 12 23:21 scripts -> /var/lib/cacti/scripts
Исправлена:
chown -R nginx:nginx /var/log/cacti/
chown -R nginx:nginx /var/lib/cacti/rra