Найти тему
Digital Abyss

Установка EoU на Debian, Ubuntu, Linux Mint

Сначала давайте разберемся, что такое EoU. EoU - это Ethernet Over Usb. Данная утилита предназначена для организации канала между ОФД и ККТ при подключении по USB. В большинстве, стандартных, случаев используется именно данный канал, если только вы не устанавливаете прямой канал Ethernet или нет цели сетевого использования ККТ.
После установки драйверов ККТ, в нашем случае
ATOL 10, запуска и тестирования кассы, переходим к установке и настройке службы EoU.
Сначала создаем нового пользователя с ограниченными права, нам же не нужно, чтобы пользователь сидел под администратором и мог менять настройки и работу системы. Назовем нашего пользователя POS-1.
Скачиваем архив с одноименным названием из Центра Загрузок.

В архиве находятся различные версии утилиты. Выбираем последнюю и переходим в директорию нужной нам архитектуры.

EoU
EoU

Разрядность необходимо выбирать исходя из разрядности операционной системы, а не приложения для кассы (как правило, 1С) и драйверов ККТ. Если у вас операционная система 64bit, то и выбирать нужно именно эту разрядность.

-3

Войдя в каталог мы обнаружим различные бинарные файлы, библиотеки и файл настроек. Именно файл настроек settings.xml нас и интересует. Открываем файл настроек любым текстовым редактором и в начале документа должна присутствовать секция:

<hotplug>auto</hotplug>

Эта опция включает автоматическое обнаружение касс на Linux.

-4

Теперь нам необходимо разместить файлы в нужных местах системы и настроить работу утилиты в качестве сервиса.
В открытой папке выбираем «Файл», и в выпавшем контекстном меню выбираем открыть как Администратор, и запустить терминал от имени администратора. Это нам необходимо чтобы не мучиться с провисанием путей для команд, а так же для разблокировки файлов, чтобы они не выдавали ошибок запрета тех или иных действий при работе с ними.
Сначала создадим директорию
/etc/ATOL/EoU и скопируем туда файл настроек settings.xml:

mkdir -p /etc/ATOL/EoU
cp settings.xml /etc/ATOL/EoU/

Саму утилиту EoU расположим в любом месте, но в нашем примере это будет директория opt:

mkdir /opt/EoU
cp * /opt/EoU/

Дадим файлам права на исполнение:

chmod +x /opt/EoU/EthOverUsb*

Зарегистрируем EoU в качестве сервиса:

/opt/EoU/EthOverUsb.sh -i

Теперь нам нужно добавить службу в автозагрузку и обеспечить управление службой посредством системы. Для этого нам нужно написать юнит для systemd.
Создаем файл юнита:

touch /etc/systemd/system/eou.service

Откроем его для редактирование и вносим настройки:

[Unit]
Description=ATOL EthernetOverUsb Service
After=display-manager.service
[Service]
Type=forking
User=root
ExecStart=/opt/EoU/EthOverUsb.sh
ExecStop=/opt/EoU/EthOverUsb.sh -t
[Install]
WantedBy=multi-user.target

Сохраняем файл юнита и добавляем его в автозагрузку:

systemctl enable eou

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

service eou start|stop|restart|status

Для проверки автоматического запуска службы EoU и обнаружения утилитой касс - перезагружаем систему. После загрузки Linux ищем лог работы службы, который располагается в /var/log/EoU и проверяем запуск утилиты, обнаружение касс и обмен данными с ОФД.
Можем перезагрузить систему и убедиться, что служба запускается автоматически. Лог работы службы располагается в /var/log/EoU, откроем его и убедимся, что утилита обнаружила кассу и обмен с ОФД проходит нормально.
На этом установка и настройка утилиты EoU окончена, и можно начинать работать.
Если вы столкнулись с проблемой установки утилиты EoU на Debian-подобные системы, вы можете обратиться к нам за помощью.

Установка EoU на Debian, Ubuntu, Linux Mint