Невозможно завершить настройку базы данных cmdbuild/openmaint.
Я пытаюсь установить Openmaint на Ubuntu 20.04. Я почти у последнего препятствия и не могу его решить.
На странице конфигурации базы данных openmaint я могу успешно подключиться к базе данных, но не могу сохранить файл data.conf. Это ошибка
java.lang.RuntimeException: ошибка при сохранении конфигурации в файл для пространства имен = org.cmdbuild.database, вызванная: org.apache.commons.configuration.ConfigurationException: невозможно сохранить в файл /var/lib/tomcat9/conf/openmaint/database .conf, вызвано: java.io.FileNotFoundException: /var/lib/tomcat9/conf/openmaint/database.conf (файловая система только для чтения)
Файл определенно существует, и в нем уже настроены правильные переменные. Пользователь Tomcat определенно имеет разрешение на запись. Если я удалю файл, я получу только ошибку о файловой системе, доступной только для чтения.
Кто-нибудь может помочь, пожалуйста?
2 ответа
Решено путем редактирования служебного файла systemd для Tomcat. Systemd изолирует доступ к файлам в песочнице, и для разрешения доступа необходимо указать явный путь к файлу в служебном файле.
Большое спасибо! Я оставлю изменения, которые я внес в свой служебный файл Tomcat:
# Security
User=tomcat
Group=tomcat
PrivateTmp=yes
AmbientCapabilities=CAP_NET_BIND_SERVICE
NoNewPrivileges=true
CacheDirectory=tomcat9
CacheDirectoryMode=750
ProtectSystem=strict
ReadWritePaths=/etc/tomcat9/Catalina/
ReadWritePaths=/var/lib/tomcat9/webapps/
ReadWritePaths=/var/lib/tomcat9/conf/ <---- ADDED
ReadWritePaths=/var/log/tomcat9/