У меня есть сценарий Perl, который я хочу запустить как сценарий перебора для ротации журналов. Когда я принудительно вращаю журнал для запуска из командной строки как root
, оно работает. Однако при запуске через cron SELinux предотвращает работу.
Я не помню, в чем была первая ошибка, но я исправил это с помощью audit2allow
. На следующий день получил SELinux, мешающий /usr/bin/perl
доступ для чтения к сценарию. Исправлено, теперь я получаю, что SELinux предотвращает /usr/bin/perl
из открытого доступа по сценарию. Я не могу дождаться, чтобы увидеть, что я получу завтра (поскольку я не могу просто запустить эту штуку для тестирования, учитывая, что она работает нормально, когда я запускаю ее вручную). Возможно, что-то о записи в один из выходных файлов.
Есть ли способ сократить этот итеративный процесс и просто сказать «да», Perl может запускать этот скрипт, даже если он запущен из журнала rotate?
Намного проще, если вы переведете SELinux в разрешающий режим.
setenforce 0
В этом режиме SELinux регистрирует ошибки, но не предпринимает никаких действий. Таким образом, вы можете собрать все соответствующие сообщения за один раз и предпринять соответствующие действия.
Вы должны предпринять необходимые шаги, чтобы убедиться, что вы выполняете все соответствующие действия, которые выполняет ваш скрипт.
Вероятно, вы могли бы запускать свою cron-задачу чаще, чтобы собирать сообщения.