Почему syslog-ng не может запуститься с SELinux TYPE syslogd_exec_t?

У меня установлен syslog-ng в системе CentOS 5.7 с применением SELinux.

я не могу запустить службу syslog-ng с помощью "service syslog-ng start" из-за ошибки:

[root@localhost ~]# service syslog-ng start
Starting syslog-ng: 
GThread-ERROR **: file gthread-posix.c: line 135 (): error 'Operation not permitted' during 'pthread_getschedparam (pthread_self(), &policy, &sched)'
aborting...
                                                           [FAILED]

Я проверил Google и получить, как показано ниже:

This is probably related to your SELinux policy, which does not allow syslog-ng  get the scheduler parameters. 

и я могу видеть тип SELinux по

[root@localhost ~]# ls -lZ /sbin/syslog*
-rwxr-xr-x  root root system_u:object_r:syslogd_exec_t /sbin/syslogd
-rwxr-xr-x  root root system_u:object_r:syslogd_exec_t /sbin/syslog-ng

но с тем же типом SELinux "syslogd_exec_t", syslogd может быть запущен с помощью "запуска syslog службы", почему SELinux не может разрешить запуск syslog-ng? я думаю, что все они должны получить "параметр планировщика".

и как я могу сделать syslog-ng работает с SELinux типа "syslogd_exec_t", потому что, естественно, все они работают для механизма syslog.

спасибо EM

1 ответ

Решение

Посмотрите /var/log/audit/audit.log, чтобы увидеть, какие действия (если таковые имеются) были отклонены SE Linux.

Если в SE Linux отказано в доступе, то для создания политики, разрешающей эти действия, можно использовать команду "audit2allow". Не допускайте вслепую всех операций, просто разрешите те, которые кажутся актуальными.

Другие вопросы по тегам