Почему удалённая и на Linux? Удалённая — потому что нет необходимости устанавливать клиентское приложение на каждое рабочее место в офисе, настраивать списки баз и обновлять ПО. На Linux — потому что бесплатно. Если и будут затраты, то это будут услуги инженера по установке и настройке ПО. За «1С» придётся платить в любом случае.

Реализация удаленной работы в 1С на терминальном сервере под управлением ОС Linux включает:

  • установку ОС Linux;

  • установку терминального сервиса X2go;

  • установку 1С;

  • настройку принтера/сетевой печати;

  • установку клиентской части терминального доступа и настройку подключения.

Предполагается, что у нас уже имеется установленная ОС из семейства дистрибутивов, основанных на RedHat, и настроенная система печати.

Установка терминального сервиса

Осуществляется просто: yum install x2goserver*. Никаких настроек делать не понадобится. 

Установка и настройка окружения клиента «1С»:

1. Скачиваем и устанавливаем пакеты, соответствующие текущей версии 1С-сервера.

Дистрибутивы 1С-клиента для Linux берем там же где и дистрибутивы для Windows — на сайте производителя ПО. Заходим на сайт, выбираем необходимую версию платформы, тип ОС, скачиваем дистрибутивы. Для нас это будут:

«Клиент 1С:Предприятия (64-bit) для RPM-based Linux-систем»

«Cервер 1С:Предприятия (64-bit) для RPM-based Linux-систем»

Из архивов, для работы клиента 1С, достаточно установить следующие пакеты:

1C_Enterprise83-client.x86_64;

1C_Enterprise83-common.x86_64;

1C_Enterprise83-server.x86_64;

yum install 1c-enterprise-8.3.18.1289-common-8.3.18-1289.x86_64.rpm  1c-enterprise-8.3.18.1289-server-8.3.18-1289.x86_64.rpm 1c-enterprise-8.3.18.1289-client-8.3.18-1289.x86_64.rpm

1.1. Отключаем запуск сервера предприятия: systemctl disable srv1cv83.

1.2. Устанавливаем шрифты yum install fonts-ttf-ms.noarch. Как вариант: можно просто скопировать шрифты из Windows в папку «/usr/share/fonts/truetype/» или «/usr/share/fonts/TTF» , при этом будет необходимо выполнить команду обновления кэша шрифтов в системе: fc-cache -fv.

1.3. Устанавливаем HASP. Скачиваем пакеты по адресу: https://ftp.etersoft.ru/pub/Etersoft/HASP/7.40/CentOS/

1.3.1. Создаем файл nethasp.ini, который должен располагаться в каталоге установки «1С-клиента» ( в нашем примере это /opt/1C/v8.3/x86_64/conf/), примерно так:

Исполняемый файл располагается в доступном месте, содержит следующее:

«..

NH_TCPIP = Enabled

NH_IPX = Disabled

NH_NETBIOS = Disabled

NH_TCPIP_METHOD = UDP

NH_SERVER_ADDR = имя или ip-адрес компьютера, на котором запущен менеджер лицензий..»

1.3.2. Стартуем и проверяем сервис haspd:

systemctl start hasp

systemctl status haspd 

Старт сервиса при загрузке ОС: systemctl enable haspd 

Установка клиентской части терминального доступа и настройка подключения

1. Для  рабочих станций с OC Linux: yum install x2goclient

Для рабочих станций с OC Windows:

Windows 10, 8, 7 скачивание доступно по ссылке

Для Windows XP SP2/SP3

2. Настроим подключение к терминальному серверу. Здесь всё понятно, прилагаю иллюстрации: 

3. Запустим подключение к удаленному компьютеру. В данном примере при подключении мы получаем рабочий стол «МАТЕ». 

В принципе, здесь может быть любой графический стол, установленный в системе. Если вы экономите на аппаратных ресурсах терминального сервера —  «Xfce» для вас.

Убедимся, что все работает, 1С запускается. Настроим в клиенте «1С» список рабочих баз.

4. Теперь мы сделаем так, чтобы этот список баз был общим для всех пользователей «1С»
на этом компьютере. У пользователя, под которым производилась настройка списка баз «1С», в  домашнем каталоге появился файл «/home/OFFICE/пользователь/.1C/1cestart/ibases.v8i»,
в котором хранятся настройки соединений с базами «1С». Для того чтобы у всех пользователей был один и тот же список баз «1С», нам нужно перенести настроенный файл «ibases.v8i» в общедоступное место, сформировав в домашних каталогах пользователей
по адресу «/home/OFFICE/пользователь/.1C/1cestart/» символическую ссылку.

Это будет выглядеть примерно так:

5. После всех описанных действий мы можем получать доступ к удалённому рабочему столу и запустить на нём приложение «1С». Однако это не очень удобно: хочется сразу после запуска соединения попасть в «1С». Для этого изменим настройки соединения, вкладка «Сессия»: тип сессии укажем «Приложение», а в параметрах укажем путь к исполняемому файлу.

Исполняемый файл располагается в доступном месте, содержит следующее:

«..#!/bin/bash

/bin/bash << EOF

# настройка переключения с русской клавиатуры на английскую

setxkbmap -rules xorg -layout "us,ru" -option "grp:alt_shift_toggle,grp_led:scroll"

# установка точки вместо запятой на дополнительной клавиатуре

xmodmap -e "keycode 91 = KP_Delete KP_Decimal KP_Delete KP_Decimal"

# Запуск клиента 1С:

/opt/1C/v8.3/x86_64/1cv8c

EOF

..»

Таким образом, в результате выполненных действий мы получили полноценный терминальный сервис с установленным приложением «1С», к которому могут подключаться как Linux, так и Windows-клиенты.


- 15% на все тарифы VDS (кроме тарифа Прогрев) — HABRFIRSTVDS

- 20% на выделенные серверы AMD Ryzen и Intel CoreHABRFIRSTDEDIC.

Доступно до 31 декабря 2021 г.

Комментарии (10)


  1. heiheshang
    12.10.2021 13:23

    Зачем терминал если есть тонкий клиент для этого ? В браузере же можно. Терминал все таки надо устанавливать, какая разница тонкий клиент устанавливать или терминал.


    1. Kliffoth
      12.10.2021 13:30

      1. Не все базы умеют так.

      2. Конфигуратор


  1. anonymous
    00.00.0000 00:00


    1. 1shaman Автор
      13.10.2021 08:50

      Тонкий клиент необходимо устанавливать на каждой рабочей станции. При обновлении платформы 1С необходимо обновлять ПО тонкого клиента, опять же на всех рабочих станциях. В нашем случае все сопровождение ПО 1С ведется на одном компьютере — терминальном сервере.


  1. MrBeliyKrol
    12.10.2021 13:30

    X2go вчерашний день, сейчас есть xpra)


    1. Kliffoth
      12.10.2021 13:31

      Ну или xrdp


  1. ivanov_slavik
    13.10.2021 05:43

    Очень слабо знаю линукс. Возник вопрос, а работа с торговым оборудованием поддерживается при таком варианте? Сканер штрихкодов, принтер этикеток и т.п?


    1. MikN
      13.10.2021 08:47

      Поддерживается.


  1. kberdnikov
    13.10.2021 08:47

    x2go конечно хорошо, но у большинства клиентов (в нашем случае) уже есть windows. Если на клиентской стороне linux, то remmina. Поэтому на сервере устанавливается xrdp и всё. Работает прекрасно много лет.


  1. MikN
    14.10.2021 06:05
    +1

    У подавляющего большинства клиентов "1С", в нашем случае,установлен Linux.
    Это непродуктивное направление : обсуждать какой протокол "круче" или "новее". Каждый решает сам для себя. С нашей стороны , мы пробовали разные протоколы для удаленной работы в клиентском приложении "1С" (Linux) . Были проблемы: с переключением раскладки, точкой на numpade, быстрым поиском и т.д. и т.п. Поэтому ,для себя , мы и определили протокол "x2go" как удовлетворяющий потребностям пользователей "1С".
    Поэтому если Вы считаете свой протокол лучшим - напишите подробно: что и как "Работает прекрасно много лет". Читатели буду рады.