Доброго дня!
Обновляю порядком забытую тему.
Freebsd 9.1 RELEASE
Exim 4.82
Exilog 0.5_6
Ошибка с выдачей в лог Exilog строк вида:
Код: Выделить всё
(40571) [exilog_agent:_queue_manager] (/var/spool/exim) Tue Mar 4 16:37:00 2014 Opening filehandle THIS also as a directory at /usr/local/sbin/exilog_agent.pl line 367, <THIS> line 50.
(40571) [exilog_agent:_queue_manager] (/var/spool/exim) Tue Mar 4 16:37:00 2014 Opening filehandle THIS also as a directory at /usr/local/sbin/exilog_agent.pl line 367, <THIS> line 50.
(40571) [exilog_agent:_queue_manager] (/var/spool/exim) Tue Mar 4 16:37:00 2014 Opening filehandle THIS also as a directory at /usr/local/sbin/exilog_agent.pl line 367, <THIS> line 50.
(40571) [exilog_agent:_queue_manager] (/var/spool/exim) Tue Mar 4 16:37:00 2014 Opening filehandle THIS also as a directory at /usr/local/sbin/exilog_agent.pl line 367, <THIS> line 50.
побеждена, наконец, сегодня.
Не найдя ни одного рабочего решения этой проблемы ни в Яндексе, ни в Гугле, пришлось брать вилы (дебаг) в руки и выяснять что не нравится в данной строке скрипту-демону /usr/local/sbin/exilog_agent.pl
Сама строка:
Код: Выделить всё
return unless (opendir(THIS,$base."/".$subdir));
А не нравится ей то, что в директории /var/spool/exim/ нет поддиректории Finput, которая там будет только при наличии опции SUPPORT_MOVE_FROZEN_MESSAGES=yes при сборке Exim.
Так что резюме - или создавайте эту директорию (сам не проверял), или удалите/заккоментируйте строку в скрипте:
у меня она 319-ая
чтобы скрипт не пытался открыть несуществующую директорию спула exim.
Принимаю благодарности