Установка M2M24 Desktop v2.x.x (Linux)

Установка M2M24 Desktop v2.x.x (Linux)

1. Скачивание программы

Скачайте архив с программой с помощью утилиты wget:

wget -O M2M24_Desktop_2.x.x.zip https://teleofis.ru/php/download.php?f=1311

2. Установка Java JDK

Для работы сервиса на ПК должен быть установлен Java JDK.

Установите JDK 21:

sudo apt install openjdk-21-jdk

3. Распаковка архива

Распакуйте архив в любую папку на вашем компьютере:

unzip ./M2M24_Desktop_2.x.x.zip

В архиве вы найдете три компонента:

  • М2М24 Desktop Client (для Windows)
  • М2М24 Desktop Client (для Linux)
  • М2М24 Desktop Service (общий)

4. Настройка службы

Распакуйте архив со службой:

unzip 'M2M24 Desktop Server xxx.zip'

Создайте директорию для службы:

sudo mkdir /opt/m2m24service

Перенесите файлы службы в созданную директорию:

cd 'M2M24 Desktop Server xxx'/
sudo mv * /opt/m2m24service

5. Создание пользователя и группы

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

sudo groupadd -r jvmgrp
sudo useradd -r -s /bin/false -g jvmgrp jvmapps

Проверьте созданного пользователя:

sudo id jvmapps

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

uid=998(jvmapps) gid=998(jvmgrp) groups=998(jvmgrp)

6. Создание службы systemd

Создайте файл службы m2m24.service:

sudo nano /etc/systemd/system/m2m24.service

Добавьте следующее содержимое:

[Unit]
Description=M2M24Service
After=network.target

[Service]
WorkingDirectory=/opt/m2m24service
ExecStart=/usr/bin/java -Xms256m -Xmx4g -Djava.net.preferIPv4Stack=true -jar service-2.3.4-jar-with-dependencies.jar
User=jvmapps Type=simple Restart=on-failure RestartSec=10 [Install] WantedBy=multi-user.target

Чтобы сохранить файл, нажмите сочетание клавиш Ctrl + O, затем клавишу Enter, затем сочетание клавиш Ctrl+X.

7. Настройка прав доступа

Назначьте права для директории службы:

sudo chown -R jvmapps:jvmgrp /opt/m2m24service/

8. Запуск службы

Обновите конфигурацию systemd:

sudo systemctl daemon-reload

Запустите службу:

sudo systemctl start m2m24.service

Добавьте службу в автозапуск:

sudo systemctl enable m2m24.service

Проверьте статус службы:

sudo systemctl status m2m24.service


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

m2m24.service - M2M24 Service
   Loaded: loaded (/etc/systemd/system/m2m24.service; disabled; vendor preset: enabled)
   Active: active (running) since Mon 2024-02-26 13:59:08 MSK; 40s ago
 Main PID: 30946 (java)
    Tasks: 30
   Memory: 278.7M
      CPU: 11.062s
   CGroup: /system.slice/m2m24.service
           └─30946 /usr/bin/java -Xms256m -Xmx4g -jar service-2.3.4-jar-with-dependencies.jar

Feb 26 13:59:17 sevostyanov java[30946]: Scheduler class: 'org.quartz.core.QuartzScheduler' - running locally.
Feb 26 13:59:17 sevostyanov java[30946]: NOT STARTED.
Feb 26 13:59:17 sevostyanov java[30946]: Currently in standby mode.
Feb 26 13:59:17 sevostyanov java[30946]: Number of jobs executed: 0
Feb 26 13:59:17 sevostyanov java[30946]: Using thread pool 'org.quartz.simpl.SimpleThreadPool' - with 2 threads.
Feb 26 13:59:17 sevostyanov java[30946]: Using job-store 'org.quartz.simpl.RAMJobStore' - which does not support persistence. and is not clustered.
Feb 26 13:59:17 sevostyanov java[30946]: 2024-02-26 13:59:17,184 INFO [StdSchedulerFactory.java:1374] Quartz scheduler 'M2M24Scheduler' initialized from default resource file in Quartz package: 'quartz.properties'
Feb 26 13:59:17 sevostyanov java[30946]: 2024-02-26 13:59:17,185 INFO [StdSchedulerFactory.java:1378] Quartz scheduler version: 2.3.2
Feb 26 13:59:17 sevostyanov java[30946]: 2024-02-26 13:59:17,185 INFO [QuartzScheduler.java:547] Scheduler M2M24Scheduler_$_NON_CLUSTERED started.
Feb 26 13:59:17 sevostyanov java[30946]: 2024-02-26 13:59:17,202 INFO [Application.java:151] Start OK