...Что мы тут видим: engine.log создается с параметрами, разрешающими чтение и запись только пользователю user-1 и чтение группе user-1
Сначала подумал, что если дать права на файл по аналогии с другими файлами в /var/log, т.е. сделать владельцем файла root:root и выставить права
-rw-r--r-- 1 root root 0 июл 27 09:50 engine.log
Но нет, в этом случае плагин не заработал, вероятно всего, потому что из-под пользователя он не смог писать в файл свои логи, поэтому
admpc@astra-2:/var/log/ifc/engine_logs$ sudo chmod 766 engine.log
admpc@astra-2:/var/log/ifc/engine_logs$ ls -l
-rwxrw-rw- 1 root root 0 июл 27 09:50 engine.log
И всё заработало...
Пытался понять логику создателей скрипта установки плагина. Похоже, было сильное желание, как порядочным, писать лог-файл в /var/log/. Создают свои директории /var/log/
ifc/engine_logs/, смотрят на права в /var/log-е и задают такие же - 755. Запускают браузер, плагин вылетает, лог-файла нет.
Чешут репу, соображают, что лог-файл создается под именем текущего пользователя. Имя пользователя и группы на пользовательских машинах заранее неизвестны. Ага! Значит надо установить на /var/log/ifc/ и /var/log/ifc/engine_logs/ права 777, а лог-файлу engine.log -640, ну, как системному логу.
Проверяют. Офигенно! Все работает, лог пишется.
Что эти волки по факту сделали: в /var/log/ifc/ и /var/log/ifc/engine_logs/ теперь любой процесс может писать любое количество файлов любого размера, да хоть из random-а. Последствия при не установленных дисковых квотах никому же не надо расписывать? Особенно весело будет "оптимизаторам", снимающим 5%-е резервирование. При этом бонусом имеем проблему запуска плагина под другими пользователями.
Ранее предложенный метод в виде: chmod 777 /var/log/ifc/engine_logs/engine.log, безусловно - зло. Решает одну проблему, остальные нет.
Предложение для Астры CE/SE: так как по умолчанию новым пользователям добавляется группа users (у пользователя-администратора данной группы нет, если необходимо, можно добавить). Сразу после установки плагина
версии 3.0.7.0:
# 1 Создаем пустой лог-файл
sudo touch /var/log/ifc/engine_logs/engine.log
# 2 Рекурсивно меняем владельца и группу
sudo chown -R root:users /var/log/ifc/
# 3 Устанавливаем права на директории
sudo chmod -R 770 /var/log/ifc
# 4 Устанавливаем права на лог-файл
sudo chmod 660 /var/log/ifc/engine_logs/engine.log
Для очистки лог-файла можно использовать команду sudo cp /dev/null /var/log/ifc/engine_logs/engine.log
При этом все права сохраняются, и никаких дополнительных действий не требуется.
Для других дистрибутивов: создать новую группу, допустим gosuslugi, по необходимости добавлять в нее пользователей.
Соответственно пукт 2 будет выглядеть так:
sudo chown -R root:gosuslugi /var/log/ifc/
. Напишу в саппорт этого плагина, может быть, они исправят такой баг или внесут в инструкцию на своем сайте, чтоб люди не мучились...
...Чтобы мы могли помочь, отправьте ваше обращение в службу поддержки Госуслуг одним из способов:
•в онлайн-чат на портале;
•или в поддержку мобильного приложения — ответим в чате поддержки приложения...
Дибилизм
В файле конфигурации /etc/ifc.cfg самой первой идет секция log level=debag. Отключить логирование не получилось, как изменить путь до лога не знаю, может жестко прописан.
Кстати, саппорт может ответить, что это не баг, а фича. Типа один ПК - один пользователь госуслуг. А если надо поменять пользователя, то сначала удалите плагин с логами, а потом входите под нужным пользователем.
Еще вспомнилось, сколько народа у КриптоПро просили deb-пакет CSP, а в ответ эти милые люди говорили: DEB-а не и не будет, держите расововерный RPM и целуйте руки, что вообще под линукс сделали. Сейчас, смотрю, их с Олимпа не много опустили, но череззаднепроходная установка, как была, так и осталась.
Если, где ошибся, поправьте, пожалуйста.
