Системные настройки java для разных пользователей в linux

Я пытаюсь запустить несколько jvms (включая tomcat) под разными пользователями в одном окне linux. Я не вижу слишком много проблем, но в Каталине.я продолжаю видеть это:

May 30, 2014 1:16:16 PM org.apache.catalina.startup.Catalina start
INFO: Server startup in 7626 ms
May 30, 2014 1:16:37 PM java.util.prefs.FileSystemPreferences run
WARNING: Could not create system preferences directory. System preferences are unusable.
May 30, 2014 1:16:55 PM java.util.prefs.FileSystemPreferences checkLockFile0ErrorCode
WARNING: Could not lock System prefs. Unix error code -158097957.
May 30, 2014 1:16:55 PM java.util.prefs.FileSystemPreferences syncWorld
WARNING: Couldn't flush system prefs: java.util.prefs.BackingStoreException: Couldn't get file lock.

Я немного покопался и вывел следующее:

администратор с корневым доступом должен создать каталог системных настроек /etc/.java/.systemPrefs with drwxr-xr-x access.

Java ищет /etc/.java/.systemPrefs/.system.lock и /etc/.java/.systemPrefs/.systemRootModFile

ручное создание вышеуказанных файлов (используйте "touch" для создания пустых files) и их содержащие каталоги должны исправляться. Права на файлы должны быть 544, права на каталоги должны быть 755, владелец и группа root для всех.

но

Я не root, заставить кого-то запустить root дорого, и у меня есть несколько пользователей, работающих под управлением jvms, означает ли это, что я должен создать эти файлы и настроить разрешения так, чтобы все пользователи имели доступ с этими привилегиями?

кто-нибудь когда-нибудь сталкивался с этим проблема, и если у них есть более простое решение, которого мне не хватает?

2 ответов


установите эти настройки для каждого пользователя:

mkdir -p ~/.java/.systemPrefs
mkdir ~/.java/.userPrefs
chmod -R 755 ~/.java
export JAVA_OPTS="-Djava.util.prefs.systemRoot=/home/user/.java -Djava.util.prefs.userRoot=/home/user/.java/.userPrefs"
  <run appl>

без создания каталогов, некоторые виртуальные машины Java по умолчанию /etc/.

Читайте также: Java - настройка настроек каталога backingstore


Я думаю, что, хотя у вас разные пользователи, JVM все еще читает tomcat как одного пользователя, так как это тот же процесс. Возможно, Вам нужен механизм управления пользователями? Войти и выйти