Установка M2M24 Desktop для операционной системы Linux
Скачиваем архив с программой с помощью утилиты wget:
$ wget https://teleofis.ru/upload/iblock/4f3/wlak57dbeyb2c82zquzx120du1xg4owu/M2M24_Desktop_2.1.2_all.zip
Распаковываем его в любую папку на ПК, подав команду unzip:
$ unzip ./M2M24_Desktop_2.1.2_all.zip
Вы найдете три архива: 2x М2М24DesktopClient (для Win и Linux) и М2М24DesktopService (общий).
Распаковываем архив со службой:
$ unzip 'M2M24 Desktop Server 2.1.2 2024-01-17.zip'
Необходимо создать директорию, где будет находится служба M2M24DesktopService.
Подаём команду mkdir и указываем где будет расположена директория:
$ sudo mkdir /opt/m2m24service (В данном примере, создана директория m2m24service в разделе /opt/)
Переходим в распакованную директорию со службой и переносим ранее распакованные файлы:
$ cd 'M2M24 Desktop Server 2.1.2 2024-01-17'/
$ sudo mv * /opt/m2m24service
Создаем пользователя и группу, под которыми будет запускаться сервис
$ 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)
Создаем службу systemd service:
$ sudo nano /etc/systemd/system/m2m24.service
со следующим содержимым:
[Unit]
Description=M2M24 Service
After=network.target
[Service]
WorkingDirectory=/opt/m2m24service (директория, где находится служба)
ExecStart=/usr/bin/java -Xms256m -Xmx4g -jar service.jar
User=jvmapps
Type=simple
Restart=on-failure
RestartSec=10
[Install]
WantedBy=multi-user.target
Настраиваем права для директории сервиса
$ sudo chown -R jvmapps:jvmgrp /opt/m2m24service/ (выдаем право для созданного пользователя и группы на директорию, где находится служба)
Обновляем конфигурацию systemd
$ sudo systemctl daemon-reload
Запускаем службу
$ sudo systemctl start 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.1.2-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