Типовая инструкция по установке TagNet модулей под Linux

Подготовка к установке

1. Проверка наличия установленной Java 64 разрядности

Для этого выполнить команду:

$ java -version

При установленной Java будет выдана схожая информация:

java version "1.8.0_231"
Java(TM) SE Runtime Environment (build 1.8.0_231-b11)
Java HotSpot(TM) 64-Bit Server VM (build 25.231-b11, mixed mode)

Если Java не установлена, необходимо скачать дистрибутив и установить.

Внимание! Пример команд для установки необходимых компонент приведены в приложении ниже.

2. Проверка наличия установленного модуля JSVC - wrapper для запуска java

Проверить, что установлен JSVC

Для Ubuntu/Debian/Astra

$ sudo apt list jsvc

Для Centos/RedHat

$ sudo rpm -qa|grep jsvc

Если Jsvc не установлен, необходимо скачать дистрибутив и установить.

Внимание! Пример команд для установки необходимых компонент приведены в приложении.

3. Подготовка пользователя для запуска сервисов

Для запуска сервисов tagnet рекомендуется выделить специального пользователя. Рекомендуется имя пользователя задать tagnet, это позволит в дальнейшем легко идентифицировать процессы и сервисы. Если пользователь tagnet не существует, создаем его:

$ sudo useradd -m tagnet -G sudo

Задаем пароль:

sudo passwd tagnet

Внимание! Дальнейшие шаги выполняются под пользователем, который будет являться владельцем сервиса (tagnet)!

4. Создание папок для сервера

Папки для сервера можно создавать в произвольном месте, но мы рекомендуем для серверов использовать следующую структуру:

/opt/tagnet/<Имя сервиса>

где <Имя сервиса> - имя, создаваемого сервиса

Например:

/opt/tagnet/tagnet-server-1

В дальнейшем для примера будем использовать эту папку - /opt/tagnet/tagnet-server-1

$ sudo mkdir /opt/tagnet/tagnet-server-1
$ sudo chown -R tagnet:tagnet /opt/tagnet/tagnet-server-1

5. Развертываение файлов сервера

Распаковываем архив с ПО в папку сервиса.

Для этого:

$ cd /opt/tagnet/tagnet-server-1
$ unzip <имя дистрибутива>

В результате в папке должна получиться следующая типовая структура папок:

bin/
config/
core/
doc/
lib/
prop/

6. Подготовить скрипт запуска сервиса

$ cd /opt/tagnet/tagnet-server-1
$ cp doc/tagnet.service.template bin/tagnet.tagnet-server-1
$ chmod 755 bin/tagnet.tagnet-server-1
APP_HOME=/opt/tagnet/tagnet-server-1
APP_USER=tagnet

где,

APP_HOME - папка сервиса (в нашем случае)

APP_USER - пользователь, из под кого будет запускаться сервис (в нашем случае tagnet)

$ sudo cp /opt/tagnet/tagnet-server-1/tagnet.tagnet-server-1 /etc/init.d

7. Создаем Linux Service (daemon):

$ sudo update-rc.d tagnet.tagnet-server-1 defaults

8. Проверить статус сервиса можно следующей командой

$ sudo systemctl status tagnet.tagnet-server-1

Результат — сервис создан, но не активен:

Пример вывода:

tagnet.tagnet-server-1.service - LSB: Tagnet server
     Loaded: loaded (/etc/init.d/tagnet.tagnet-server-1; generated)
     Active: inactive (dead) since ...
       Docs: man:systemd-sysv-generator(8)

9. Включить сервис в автозапуск

$ sudo systemctl enable tagnet.tagnet-server-1

Проверить статус:

$ sudo systemctl status tagnet.tagnet-server-1

? tagnet.tagnet-server-1.service - LSB: Tagnet server
   Loaded: loaded (/etc/init.d/tagnet.tagnet-server-1; generated; vendor preset: enabled)
   Active: active (running) since ...
     Docs: man:systemd-sysv-generator(8)
   CGroup: /system.slice/tagnet.tagnet-server-1.service
           +-6077 jsvc.exec -user tagnet -home /usr/lib/jvm/java-8-openjdk-amd64 -Dru.g4.launcher.required_jvm_bitness=64 -Djava.io.tmpdi
           L-6078 jsvc.exec -user tagnet -home /usr/lib/jvm/java-8-openjdk-amd64 -Dru.g4.launcher.required_jvm_bitness=64 -Djava.io.tmpdi

10. Управление сервисом###

$ sudo systemctl start tagnet.tagnet-server-1
$ sudo systemctl stop tagnet.tagnet-server-1

Приложение

Установка JSVC под Linux Astra

В составе стандартных дистрибутивов для Linux Astra утилита jsvc не входит. Для установки утилиты jsvc необходимо выполнить следующие операции:

$ sudo apt install debian-archive-keyring dirmngr
/etc/apt/sources.list
deb https://archive.debian.org/debian/ stretch main contrib non-free
$ sudo apt update
$ sudo apt install jsvc
$ sudo apt list jsvc