Linux Daemon написан на Java
Вопрос
В настоящее время я пишу Java-демон. Я пишу сценарий, который будет иметь стандартные команды демона (запуск, остановка, перезапуск, состояние), и я пытаюсь решить, куда следует обратиться при установке демона.
Моя текущая идея:
Файл PID: /var/run/myapp.pid
Сценарий демона: /etc/init.d/myapp
Java-приложение (.jar): / usr / bin / myapp
Журналы: /var/log/myapp.err , /var/log/myapp.log , / var / log / myapp .info (вы поняли)
Configs: /etc/myapp.conf (или / etc / myapp / configs-go-here , если у меня их будет больше в будущем ) р>
Я все еще новичок в структуре каталогов Linux, поэтому, если я делаю что-то не так, дайте мне знать. Больше всего меня смущает то, что мое Java-приложение представляет собой файл .jar (архив), а не двоичный файл. Значит ли это, что / usr / bin / не является " правильным " место для этого?
Решение
Вы можете поместить файл .jar
в /usr/lib/myapp/myapp.jar
и заставить скрипт запуска выполнить java -j / usr / lib / myapp / myapp.jar
Если посмотреть с этой стороны, jar - это, по сути, библиотека, которую использует бинарный файл / usr / bin / java
, так что эти места выглядят хорошо для меня.
Другие советы
Предложение /usr/lib/myapp/myapp.jar
находится на правильном пути, но / usr / lib
предназначено для файлов, специфичных для архитектуры - начиная с Java < Архивы code> jar не зависят от платформы, лучше использовать /usr/share/myapp/myapp.jar
.