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

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

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$2 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.

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

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

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

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

А

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

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

12 голосов | спросил iloveretards 30 Maypm14 2014, 21:40:20

2 ответа


0

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

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 - настройка параметров каталога резервного копирования

ответил iloveretards 30 Maypm14 2014, 22:27:06
0

Я исправил это, установив права доступа моей программы Bash к 755

ls abc.sh
chmod 755 abc.sh
ответил bomgarato 10 MonEurope/Moscow2018-12-10T07:45:50+03:00Europe/Moscow12bEurope/MoscowMon, 10 Dec 2018 07:45:50 +0300 2018, 07:45:50

Похожие вопросы

Популярные теги

security × 330linux × 316macos × 2827 × 268performance × 244command-line × 241sql-server × 235joomla-3.x × 222java × 189c++ × 186windows × 180cisco × 168bash × 158c# × 142gmail × 139arduino-uno × 139javascript × 134ssh × 133seo × 132mysql × 132