Эквайринг СБРФ при ккмсервер под линуксом?

Mini web-сервер для печати чеков на фискальных регистраторах из мобильных приложений через HTTP запрос JSON.
LionSprings
Сообщения: 47
Зарегистрирован: 08 июн 2019, 20:11

Re: Эквайринг СБРФ при ккмсервер под линуксом?

Сообщение LionSprings » 08 авг 2023, 12:02

wiktor84 писал(а):
08 авг 2023, 10:20
LionSprings писал(а):
25 июн 2023, 03:35
Audim писал(а):
25 июн 2023, 02:47
Для Linux просите у сбера терминал по протоколу TTK2 - он не зависит от их ПО и будет работать где угодно.
А SP30 именно такой. Сначала запустили под их прокладкой, потом уже переключил на ТТК2 - вроде тоже всё работает. Но прокладка под линксом тоже вроде исправно функционировала, хотя и пришлось немного с бубном поплясать при инсталляции.
Привет. Тоже стоит задача настройки сберовского терминала, такой же модели. Сберовцы пришли поставили свою прогу она работает, но только с повышением привилегий т.е. для запуска нужно дать команду sudo ./sb_pilot ... если запустить ./sb_pilot без повышения привилегий терминал не отзывается... Соответственно при добавлении терминала например в 1с он не работает ((. Как у тебя обстоят дела с этим? Может нужно добавить пользователя в какие нибудь группы? дать права на какие-то файлы?
Подключение по Ethernet? Тогда на кой нужна их прокладка? ТТК2 рулит.
Хотя судя по описанию проблемы, у вас подключение COM/USB, и проблема в правах доступа к порту. Чаще всего такая проблема решается добавлением юзера, под которым идёт работа, в группу dialout. Ну или какая там у вас, посмотрите по ls -l /dev/ttyS*

wiktor84
Сообщения: 3
Зарегистрирован: 08 авг 2023, 10:03

Re: Эквайринг СБРФ при ккмсервер под линуксом?

Сообщение wiktor84 » 08 авг 2023, 16:29

[/quote]Подключение по Ethernet? Тогда на кой нужна их прокладка? ТТК2 рулит.
Хотя судя по описанию проблемы, у вас подключение COM/USB, и проблема в правах доступа к порту. Чаще всего такая проблема решается добавлением юзера, под которым идёт работа, в группу dialout. Ну или какая там у вас, посмотрите по ls -l /dev/ttyS*
[/quote]

Подключение COM/USB пользователь добавлен в dialout и tty пробовал давать максимальные права на файлы использующиеся для определения порта терминала в нашем случае это ttyS9 b ttyACM0, результат нулевой. Под пользователем так и не заработало.

LionSprings
Сообщения: 47
Зарегистрирован: 08 июн 2019, 20:11

Re: Эквайринг СБРФ при ккмсервер под линуксом?

Сообщение LionSprings » 08 авг 2023, 22:39

wiktor84 писал(а):
08 авг 2023, 16:29
Подключение COM/USB пользователь добавлен в dialout и tty пробовал давать максимальные права на файлы использующиеся для определения порта терминала в нашем случае это ttyS9 b ttyACM0, результат нулевой. Под пользователем так и не заработало.
Ну нет других причин, если под рутом связь есть, а под юзером - нет. Права. Значит, что-то не то делали, думая что даёте права или добавляя в группу. Или у вас CentOS какой-нить стоит , или ещё какой-то армор, блокирующий доступ. Какой дистрибутив то хоть?
И да, а почему не хотите Ethernet использовать?

wiktor84
Сообщения: 3
Зарегистрирован: 08 авг 2023, 10:03

Re: Эквайринг СБРФ при ккмсервер под линуксом?

Сообщение wiktor84 » 09 авг 2023, 09:52

Операционная система РЕД ОС 7.3. Разобрались в этом вопросе. Сберовская прога пыталась создать lock файл --> /var/lock/sbrf-upos-main.lock на что у пользователя нет прав.
Разовым выходом (до перезагрузки) стало создание этого файла и выдачи прав
sudo touch /var/lock/sbrf-upos-main.lock
sudo chmod 664 /var/lock/sbrf-upos-main.lock
sudo chown user_name:group /var/lock/sbrf-upos-main.lock

Далее создали демона чтобы файл создавался автоматически и выдавались права.

sudo nano /etc/systemd/system/create-lockfile.service

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

[Unit]
Description=Create sbrf-upos-main.lock file on boot

[Service]
Type=oneshot
ExecStart=/bin/touch /var/lock/sbrf-upos-main.lock
ExecStart=/bin/chmod 664 /var/lock/sbrf-upos-main.lock
ExecStart=/bin/chown user_name:group /var/lock/sbrf-upos-main.lock

[Install]
WantedBy=multi-user.target

2. Запустите и активируйте юнит:

sudo systemctl daemon-reload
sudo systemctl enable create-lockfile.service
sudo systemctl start create-lockfile.service

3. Перезагрузите систему:

sudo reboot

После перезагрузки, systemd автоматически выполнит команды из юнита и создаст файл /var/lock/sbrf-upos-main.lock с нужными правами и владельцем.

LionSprings
Сообщения: 47
Зарегистрирован: 08 июн 2019, 20:11

Re: Эквайринг СБРФ при ккмсервер под линуксом?

Сообщение LionSprings » 09 авг 2023, 11:17

wiktor84 писал(а):
09 авг 2023, 09:52
Сберовская прога пыталась создать lock файл --> /var/lock/sbrf-upos-main.lock на что у пользователя нет прав.
Вы не одиноки. https://stackoverflow.com/questions/409 ... o-run-lock
Интересно, это от чего такой эффект. Я с RH7 не работал, но вообще, насколько я помню, во многих дистрибутивах /var/lock это симлинк на /run/lock, который в свою очередь имеет права 777.
Такое замороченное частное решение конечно тоже вариант. Под дебианом такой проблемиы нет.

Код: Выделить всё

user@server ~ $ ls /var/lock/
subsys
user@server ~ $ touch /var/lock/sbrf-upos-main.lock
user@server ~ $ ls /var/lock/
sbrf-upos-main.lock  subsys
user@server ~ $ echo "bla-bla" > /var/lock/sbrf-upos-main.lock
user@server ~ $ cat /var/lock/sbrf-upos-main.lock
bla-bla

Ответить