Почему при установке клиента 1С на Linux требуются серверные пакеты и как правильно настроить рабочее место?

Системный администратор 1С v8.3 (Управляемые формы) IT и автоматизация бизнеса
← На главную

При переходе с операционных систем Windows на Linux администраторы и разработчики часто сталкиваются с неожиданным поведением пакетного менеджера: при попытке установить клиентскую часть «1С:Предприятия» (в частности, толстый клиент или Конфигуратор) система требует обязательной установки пакетов common и server. Разберем архитектурные причины таких зависимостей, выясним разницу между типами клиентов и рассмотрим пошаговый порядок развертывания рабочего места на Linux без лишней нагрузки на систему.

Архитектура пакетов 1С в Linux: почему толстому клиенту нужен сервер

Проанализируем структуру дистрибутивов платформы 1С. В среде Windows все необходимые библиотеки объединены в общем инсталляторе, тогда как в Linux-дистрибутивах компоненты платформы разделены на отдельные RPM- или DEB-пакеты. Разница в требованиях к зависимостям обусловлена назначением различных клиентских приложений:

  1. Тонкий клиент (1C_Enterprise83-client): предназначен исключительно для взаимодействия с сервером 1С или веб-сервером. Он не выполняет серверный код локально и не умеет напрямую работать с файловыми базами данных без вспомогательных компонентов. Поэтому тонкий клиент устанавливается автономно и не требует пакета server.
  2. Толстый клиент и Конфигуратор: содержат в себе механизмы непосредственной работы с файловой СУБД, локального выполнения серверного контекста (директивы &НаСервере, &НаСервереБезКонтекста), а также встроенный сервер отладки. В сборке для Linux весь этот функционал скомпилирован внутри базовых библиотек пакетов 1C_Enterprise83-common и 1C_Enterprise83-server.

Таким образом, зависимость Конфигуратора и толстого клиента от пакета server является штатной особенностью архитектуры платформы: Конфигуратор на рабочей станции разработчика физически использует серверные библиотеки для компиляции, синтаксического анализа и локального запуска сессий.

Порядок установки и отключение ненужной службы сервера

Установка серверного пакета на рабочую станцию пользователя или программиста не означает, что машина обязательно должна работать как полноценный рабочий сервер 1С. Однако пакетные менеджеры при установке пакета server нередко автоматически создают и активируют системного демона (службу кластера серверов 1С).

Рассмотрим, как правильно установить компоненты и освободить системные ресурсы:

  1. Установка пакетов платформы: выполняем установку необходимых пакетов (например, common, server, client и их языковых компонентов nls). В современных версиях платформы (начиная с 8.3.20) для этого используется единый установщик setup-full, в котором можно отметить только нужные модули.
  2. Отключение фоновой службы сервера: если рабочая станция используется только для разработки или запуска файловых баз, работающий в фоне агент сервера не требуется. Более того, он по умолчанию занимает оперативную память и системные порты (1540, 1541, 1560–1591).

Для отключения службы выполним команду деактивации в терминале:


sudo systemctl stop srv1cv83
sudo systemctl disable srv1cv83

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

Обязательные системные библиотеки и шрифты

Для стабильной работы графического интерфейса 1С на Linux необходимо убедиться в наличии базовых зависимостей графической подсистемы и шрифтов:

  1. Шрифты Microsoft Core Fonts: платформа 1С рассчитана на стандартные гарнитуры (Arial, Times New Roman, Tahoma). При их отсутствии в формах и отчетах могут возникать искажения разметки. Устанавливаем пакет msttcorefonts (или ttf-mscorefonts-installer).
  2. Библиотека WebKitGTK: используется платформой в качестве встроенного веб-движка для элемента ПолеHTMLДокумента. Без этой библиотеки работа встроенных справочных систем и форм с веб-содержимым будет некорректной.
  3. Дополнительные библиотеки: пакеты imagemagick, unixodbc и libcanberra-gtk-module, обеспечивающие обработку графики, печать и доступ к внешним источникам данных.

Особенности отображения веб-содержимого и устаревшие технологии (Silverlight)

Разберем ситуацию, когда в конфигурациях используются внешние визуальные компоненты, например, интерактивные схемы на базе устаревших плагинов (Silverlight и др.):

  1. Встроенный движок: в Linux-клиенте 1С за отображение HTML-документов отвечает движок WebKitGTK. В отличие от старых версий под Windows, использующих MSHTML/Internet Explorer, современный WebKitGTK не поддерживает архитектуру плагинов NPAPI.
  2. Несовместимость Silverlight: запуск плагинов Microsoft Silverlight в 1С под Linux через сторонние решения (такие как Moonlight или Pipelight) невозможен, так как их разработка прекращена, а интеграция с внутренним браузером платформы не поддерживается.
  3. Рекомендуемая альтернатива: для интерактивных схем, графов и диаграмм следует переводить визуализацию в поле HTML-документа на стандартные технологии HTML5, JavaScript и SVG (например, библиотеки Mermaid, GoJS, JointJS) либо использовать встроенный платформенный объект ГрафическаяСхема. Обмен данными между кодом 1С и JavaScript в поле HTML осуществляется через события и методы объекта встроенного языка.
← На главную