В статье описано, как установить r_keeper 7 на Linux. Рекомендуем использовать Debian 11, в данной инструкции рассматривается установка именно на эту систему.

Процесс состоит из нескольких шагов. Установите:

  1. Debian 11
  2. Эмулятор Wine
  3. PostgreSQL
  4. r_keeper 7.

Ожидается, что пользователь знаком с работой в терминале.

Установка OS Debian 11

Убедитесь, что на диске есть свободное место. Для установки достаточно 20 ГБ.

Во время установки требуется доступ в Интернет. Ориентировочно потребуется 1 GB трафика.

  1. Скачайте образ операционной системы debian-11.3.0-amd64-netinst.iso и запишите его на диск или USB-носитель. Как записать образ, читайте в инструкции.
  2. Загрузите компьютер с диска или USB-носителя

  3. Запустите установку и укажите следующие настройки:

    1. Регион
    2. Раскладка
    3. Язык
    4. Страну.
  4. Задайте имя компьютера и пароль, оставьте пустым имя домена
  5. Задайте имя нового пользователя и его пароль

  6. Выберите часовой пояс

  7. Выберите разметку диска Авто - использовать весь диск и диск для установки

  8. Укажите способ Все файлы в одном разделе

  9. Выберите пункт Записать изменения на диск и подтвердите запись изменений: поставьте переключатель в строку Да. Подождите, пока установится базовая часть системы.

  10. Выберите страну и зеркало для скачивания: Российская Федерация, deb.debian.org

  11. Пропустите настройку прокси-сервера. Подождите, пока скачаются и установятся дополнительные файлы.

  12. Выберите окружение. Можно оставлять настройки по умолчанию. Подождите окончания установки. Извлеките диск или USB-носитель.

Установка эмулятора Wine и окружения

После перезагрузки системы авторизуйтесь с данными созданного пользователя.

Установите Wine с помощью терминала:

  1. Запустите терминал. Для запуска можно воспользоваться поиском.
  2. Добавьте созданного пользователя в группу с расширенными правами — sudoers:
    1. Авторизуйтесь с неограниченными правами root с помощью команды

      su
      BASH

      Введите пароль, нажмите Enter.

    2. Для работы понадобиться пользователь с правами sudo. Установите группу с такими пользователями:

      apt-get install sudo -y
      BASH
    3. Добавьте пользователя в группу sudoers

      usermod -aG sudo username
      BASH

      *username - имя пользователя, созданного при запуске.

    4. Выйдите из учетной записи root с помощью команды

      exit
      BASH
  3. Авторизуйтесь под пользователем, добавленным в группу sudoers.

  4. Установите последние обновления. Обновление займет около 1,4 ГБ.

    sudo apt update && sudo apt upgrade -y
    BASH

    Sudo спросит пароль — введите пароль текущего пользователя и нажмите клавишу Enter. Эти команды скачают из интернета информацию об обновлениях и установят их.

  5. Рекомендуем установить в систему двухпанельный файловый менеджер Midnight Commander. Он содержит текстовый редактор и просмотрщик файлов с переключением кодировок:

    sudo apt install mc -y
    BASH
  6. Добавьте в систему управления возможность установки 32-битных приложений. Для этого в терминале выполните команду:

    sudo dpkg --add-architecture i386
    BASH
  7. Добавьте в список установки выпуск дистрибутива testing. Выполним:

    echo 'deb http://ftp.ru.debian.org/debian/ testing main contrib' | sudo tee /etc/apt/sources.list.d/testing.list
    BASH

    Для стабильной работы r_keeper 7 необходим эмулятор Wine версии выше 6.0.

  8. Обновите информацию о пакетах:

    sudo apt update
    BASH
  9. Установите Wine и Winetricks:

    sudo apt install -y wine:i386 winetricks
    BASH
  10. В домашней директории пользователя, не переходя в другие папки, создайте директорию .wine с настройками для запуска 32-битных приложений. Выполните:

    wineboot -k && rm -r ~/.wine && WINEARCH=win32 wineboot -i
    BASH
    В Linux файлы и директории, начинающиеся с символа точки, считаются скрытыми и не отображаются командой ls и файловыми менеджерами. Для просмотра директорий со скрытыми файлами нужно использовать команду: ls -a . Файловые менеджеры имеют настройку для отображения скрытых файлов. Объединение команд с помощью символов && позволяет запускать каждую следующую команду только в случае успешного выполнения предыдущей.
  11. Установите mdac28:

    winetricks mdac28
    BASH
  12. Установите msxml4:

    winetricks msxml4
    BASH

Установка PostgreSQL

Установите драйвер для PostgreSQL

  1. Создайте директорию для скачивания и перейдите в нее:

    mkdir -p ~/download && cd ~/download
    BASH
  2. Скачайте файл psqlodbc_13_02_0000-x86.zip. Запустите:

    wget -c https://ftp.postgresql.org/pub/odbc/versions/msi/psqlodbc_13_02_0000-x86.zip && unzip psqlodbc_13_02_0000-x86.zip
    BASH
  3. Установите драйвер:

    wine msiexec /i psqlodbc_x86.msi
    BASH
  4. В открывшемся окне нажмите Принять лицензию, затем Далее, Установить и Завершить.

  5. Установите PostgreSQL:

    sudo apt install postgresql postgresql-contrib -y
    BASH
  6. Создайте нового пользователя. Вместо rk7user укажите произвольное имя пользователя:

    sudo -u postgres createuser --superuser rk7user --pwprompt
    BASH
  7. Откройте терминальный клиент для работы с PostgreSQL:

    sudo -u postgres psql
    BASH
  8. Создайте базу данных:

    CREATE DATABASE rk7ref WITH OWNER rk7user;
    BASH
  9. Выйдите из psql:

    \q.
    BASH

Установка rkeeper 7

  1. Создайте директорию для скачивания и перейдите в нее:

    mkdir -p ~/download && cd ~/download
    BASH
  2. Скачиваем дистрибутив с FTP-сервера. В команду необходимо добавить данные для авторизации:

    wget --user=1111 --password=222222 -c ftp://ftp.ucs.ru/rk7/versions/7_07_00/7.07.00.206/INST7.07.00.206.ZIP
    BASH

    *1111 — дилер ID
    *222222 — пароль от учетной записи дилера.

  3. Создайте директорию rkeeper-7 в ~/.wine/drive_c и перейдите в нее:

    mkdir -p ~/.wine/drive_c/rkeeper-7 && cd ~/.wine/drive_c/rkeeper-7
    BASH
  4. Распакуйте дистрибутив rkeeper 7:

    unzip ~/download/INST7.07.00.206.ZIP
    BASH
  5. Перейдите в директорию bin/win:

    cd bin/win
    BASH
  6. Скопируйте шаблоны INI-файлов:

    cp -a ini/* .
    BASH
  7. Отредактируйте rk7srv.INI:

    mcedit rk7srv.INI
    BASH

    Отредактируйте так же остальные INI-файлы.

  8. Установите winbind

    sudo apt install winbind -y
    BASH
  9. Запустите сервер справочников. Убедитесь, что вы выполняете команду из директории win.

    setsid -f wine refsrv.exe /desktop
    BASH

    Команда setsid -f позволяет запускать программы в фоне. В противном случае программа завершится при закрытии терминала.

  10. Запустите менеджерскую станцию:

    wine cmd /c rk7man.bat
    BASH

    Если менеджерская станция загрузилась с английским интерфейсом, поменяйте язык. Перейдите в меню User, затем выберите пункт Lanquage, затем нажмите ru.

  11. Для создания подключения к БД создайте копию предустановленного подключения PostgreSQL и приведите строку соединения к следующему виду:

    DRIVER={PostgreSQL UNICODE};DATABASE=rk7ref;SERVER=localhost;PORT=5432;MaxVarcharSize=2048
    BASH
  12. Настройте сервер справочников, кассовые серверы, при необходимости — серверы отчетов. Пролицензируйте сервер справочников и кассовый сервер. Настройте станции обслуживания, станции печати и закройте менеджерскую станцию.

  13. Если для сети заведений настроен сервер отчетов, запустите его:

    setsid -f wine rkReportsServer.exe /desktop
    BASH
  14. Запустите кассовый сервер:

    setsid -f wine midserv.exe /desktop
    BASH
  15. Запустите станцию обслуживания:

    setsid -f wine cmd /c wincash.bat
    BASH

Система готова к использованию.

Решение проблем

Все команды должны исполняться без ошибок.

Если команды отрабатывают с ошибками:

  1. Проверьте, достаточно ли у вас прав. Если команда запускается с правами sudo, пользователь должен быть добавлен в группу sudoers.
  2. Проверьте синтаксис команды.
  3. Если вы командой запускаете файл, проверьте, из той ли директории вы задаете команду. Команда запускается из директории, в которой находится исполняемый файл.

Ошибка usermod "команда не найдена"

Если после команды usermod -aG sudo username система возвращает ответ "команда не найдена", выполните команду:

/usr/sbin/usermod -aG sudo username
BASH

Ошибка установки mdac28 или msxml4

Если не удается установить mdac28 или msxml4 через winetricks, то можно установить вручную. Для этого нужно будет скопировать файлы из другой машины с Debian+Wine из папки ~/.cache/winetricks/mdac28/MDAC_TYP.EXE и ~/.cache/winetricks/msxml4/msxml.msi.