К статье
Практический материал

Администрирование · 11 мин

Как установить сервер 1С на Linux

Установка сервера 1С:Предприятие на Linux: выбор дистрибутива, установка платформы и PostgreSQL, настройка кластера, проверка работы и типичные ошибки.

Клиент-серверный вариант работы 1С на Linux — рабочее решение для организаций, которые хотят снизить затраты на лицензии операционных систем или унифицировать инфраструктуру. Платформа 1С:Предприятие официально поддерживает несколько дистрибутивов Linux, а в качестве СУБД чаще всего используется PostgreSQL, в том числе сборка от 1С, адаптированная под особенности платформы.

Установка сервера 1С на Linux отличается от Windows-варианта: дистрибутив поставляется в виде пакетов .deb или .rpm, конфигурация ведётся через файлы, а управление службами — через systemd. Ошибки на этапе установки обычно связаны с зависимостями, локалями и правами доступа, поэтому важно выполнять шаги последовательно и проверять результат после каждого этапа.

Ниже разобран полный цикл: подготовка системы, установка сервера 1С, развёртывание PostgreSQL, создание информационной базы и проверка работоспособности. Инструкция ориентирована на администратора, знакомого с базовыми командами Linux.

Что понадобится перед установкой

Для работы сервера 1С нужен 64-разрядный дистрибутив Linux из списка поддерживаемых: актуальный перечень публикуется в системных требованиях платформы на сайте 1С. На практике чаще всего используют Debian, Ubuntu Server, CentOS-подобные системы и отечественные дистрибутивы (Astra Linux, ALT Linux, РЕД ОС). Выбирайте дистрибутив, с которым у администратора есть опыт, — это важнее формальных различий.

Аппаратные требования зависят от числа пользователей и объёма баз. Для небольшой организации на 10–20 пользователей обычно достаточно 4 ядер CPU и 8–16 ГБ ОЗУ, но точный расчёт нужно делать по фактической нагрузке. Отдельно позаботьтесь о быстрых дисках: база данных чувствительна к скорости подсистемы хранения, и медленные диски — частая причина жалоб на «тормоза» 1С.

Заранее подготовьте: дистрибутив сервера 1С с портала releases.1c.ru (нужны тарифные файлы лицензии или USB-ключ HASP), дистрибутив PostgreSQL (рекомендуется сборка от 1С, так как в ней учтены специфические требования платформы) и root-доступ к серверу. Если планируется программная лицензия, серверу потребуется доступ в интернет для активации или сетевое расположение сервера лицензирования.

Подготовка операционной системы

Перед установкой пакетов обновите систему и проверьте локали. Серверу 1С и PostgreSQL требуется корректно настроенная локаль с поддержкой UTF-8, чаще всего ru_RU.UTF-8. Если локаль не сгенерирована, PostgreSQL может создать кластер с неподходящей кодировкой, и база 1С либо не создастся, либо будет работать с ошибками сортировки строк.

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

bash
sudo apt update && sudo apt upgrade -y
sudo locale-gen ru_RU.UTF-8
sudo update-locale LANG=ru_RU.UTF-8
sudo apt install -y libfontconfig1 libglib2.0-0 libgsf-1-114 unixodbc

Проверьте сетевые настройки: у сервера должно быть статическое имя хоста и постоянный IP-адрес, поскольку клиенты и консоль администрирования обращаются к серверу по имени или адресу. Если в сети нет DNS, добавьте запись о сервере в /etc/hosts на всех машинах, которые будут к нему подключаться.

Установка платформы сервера 1С

Дистрибутив сервера 1С скачивается с портала releases.1c.ru в виде архива, содержащего набор пакетов. Для Debian-систем это файлы .deb, для RPM-систем — .rpm. Распакуйте архив и установите пакеты в правильном порядке: сначала common (общие компоненты), затем server (сервер), при необходимости — ws (веб-сервисы) и дополнительные языковые пакеты.

bash
tar -xvf deb64_8_3_xx_xxxx.tar.gz
sudo dpkg -i 1c-enterprise-common_*.deb
sudo dpkg -i 1c-enterprise-server_*.deb
sudo apt -f install  # доустановка зависимостей, если dpkg сообщил об ошибках

После установки платформа размещается в каталоге /opt/1cv8, а служба сервера регистрируется в systemd под именем srv1cv8. Служба запускается от имени пользователя usr1cv8, который создаётся автоматически при установке. Не меняйте этого пользователя без необходимости: права на рабочие каталоги кластера рассчитаны именно на него.

Порядок установки платформы
  1. 1
    Скачайте дистрибутив сервера 1С с портала releases.1c.ru для вашей архитектуры и типа пакетов
  2. 2
    Распакуйте архив и установите пакеты: сначала common, затем server
  3. 3
    Устраните ошибки зависимостей командой apt -f install или аналогом для вашего пакетного менеджера
  4. 4
    Запустите службу: sudo systemctl enable --now srv1cv8
  5. 5
    Проверьте статус: systemctl status srv1cv8 — служба должна быть active (running)

Если используется аппаратный ключ HASP, дополнительно установите драйвер ключа и менеджер лицензий — пакеты входят в состав дистрибутива (компоненты с hasp в названии). Для программных лицензий драйвер не нужен, но потребуется активировать лицензию через сервис лицензирования 1С.

Установка и настройка PostgreSQL для 1С

Платформа 1С предъявляет особые требования к PostgreSQL: нужны специфические настройки и, в ряде версий, патчи, поэтому рекомендуется сборка PostgreSQL от 1С, доступная на том же портале. Стандартный PostgreSQL из репозиториев дистрибутива может работать, но совместимость конкретных версий нужно сверять с документацией — несовпадение приводит к ошибкам при создании базы или в работе.

После установки PostgreSQL инициализируйте кластер с локалью ru_RU.UTF-8 и запустите службу. Затем задайте пароль суперпользователя postgres — он потребуется при создании информационной базы из консоли 1С.

bash
sudo systemctl enable --now postgresql
sudo -u postgres psql -c "ALTER USER postgres WITH PASSWORD 'StrongPassword';"

Для производительной работы базу PostgreSQL нужно настроить: увеличить shared_buffers (обычно до 25–30% от объёма ОЗУ), настроить effective_cache_size, work_mem и параметры журнала транзакций. Точные значения подбираются под конкретный сервер; отправной точкой служат рекомендации из документации 1С и инструменты вроде pgtune. Конфигурационный файл postgresql.conf находится в каталоге данных кластера, после изменений службу нужно перезапустить.

Типичные ошибки
01
Создание кластера PostgreSQL с локалью по умолчанию (C или POSIX) — база 1С либо не создаётся, либо работает с ошибками сортировки; кластер приходится пересоздавать
02
Установка PostgreSQL из штатного репозитория без проверки совместимости версий — ошибки при создании информационной базы
03
Слабый пароль postgres или его отсутствие в документации — невозможно создать базу из консоли, риск несанкционированного доступа
04
Размещение базы на медленном диске — жалобы пользователей на производительность даже при мощном процессоре

Создание информационной базы и подключение клиентов

Информационную базу в кластере создают двумя способами: через графическую консоль администрирования серверов 1С (она устанавливается на Windows-машину администратора и подключается к серверу по сети) или через утилиту командной строки rac из состава сервера. Для разовой настройки удобнее консоль; для автоматизации — rac.

При создании базы укажите: имя сервера СУБД, тип СУБД (PostgreSQL), имя базы данных, пользователя postgres с паролем и параметры «Создать базу данных в случае её отсутствия». Флажок блокировки регламентных заданий при создании тестовой копии базы не забудьте снять или установить осознанно — это частая причина «неработающих» фоновых задач в свежей базе.

Клиентские машины подключаются к базе по строке вида Srvr="server1c";Ref="buhbase", где server1c — имя или IP сервера 1С. Убедитесь, что на клиентах установлена платформа той же версии (или совместимой), что и сервер, а сетевые порты кластера (по умолчанию диапазон вокруг 1540–1560) открыты в брандмауэре сервера.

Контрольные точки

Как проверить результат

Служба сервера 1С
Норма

systemctl status srv1cv8 показывает active (running), процессы ragent, rmngr, rphost присутствуют в ps

Тревожный признак

Служба в состоянии failed или процессов нет — смотрите журнал journalctl -u srv1cv8

Кластер в консоли администрирования
Норма

Кластер отображается, список рабочих процессов не пуст

Тревожный признак

Консоль не подключается — проверяйте сеть, брандмауэр и порт агента

Созданная база
Норма

База открывается в режиме конфигуратора и предприятия с клиентской машины

Тревожный признак

Ошибка соединения с СУБД — проверяйте pg_hba.conf, пароль postgres и доступность порта PostgreSQL

Настройка брандмауэра и прав доступа

Сервер 1С использует несколько сетевых портов: агент кластера (по умолчанию 1540), менеджер кластера (1541) и диапазон портов рабочих процессов (1560–1591). PostgreSQL слушает порт 5432. На сервере с включённым брандмауэром эти порты нужно открыть, причём порт PostgreSQL — только для локальных подключений, если СУБД стоит на той же машине.

bash
sudo firewall-cmd --permanent --add-port=1540-1541/tcp --add-port=1560-1591/tcp
sudo firewall-cmd --reload

Рабочие каталоги кластера (по умолчанию /var/lib/1cv8 или каталог, заданный при запуске агента) должны принадлежать пользователю usr1cv8. Если вы переносите каталог кластера или восстанавливаете сервер из копии, проверьте владельца и права — иначе служба не стартует или кластер потеряет список баз. Аналогично каталог данных PostgreSQL должен принадлежать пользователю postgres с правами 0700.

Обновление платформы и обслуживание

Обновление сервера 1С выполняется установкой пакетов новой версии поверх или рядом со старой: платформа допускает параллельное существование нескольких версий в /opt/1cv8. Порядок обновления: остановить сеансы пользователей, остановить службу, установить новые пакеты, запустить службу и проверить версию кластера. Перед обновлением боевого сервера проверьте совместимость новой версии платформы с вашей конфигурацией и версией PostgreSQL.

Для регулярного обслуживания настройте резервное копирование базы средствами PostgreSQL (pg_dump или физические копии), мониторинг места на диске и ротацию журналов. Технологический журнал 1С включайте только для диагностики и на ограниченное время — постоянная запись быстро заполняет диск.

Итог

Что важно запомнить

Успешная установка сервера 1С на Linux сводится к четырём условиям: поддерживаемый дистрибутив с локалью ru_RU.UTF-8, совместимая сборка PostgreSQL, корректный порядок установки пакетов и открытые порты кластера. Каждый этап завершайте проверкой — это быстрее, чем искать ошибку задним числом.

Частые вопросы

Можно ли использовать PostgreSQL из стандартного репозитория дистрибутива?

Технически — иногда да, но совместимость конкретных версий платформы и СУБД нужно сверять с документацией 1С. Надёжнее использовать сборку PostgreSQL от 1С: в ней учтены требования платформы, и риск ошибок при создании базы минимален.

Нужна ли отдельная лицензия на сервер 1С для Linux?

Да, сервер 1С:Предприятие лицензируется отдельно от клиентских лицензий, независимо от операционной системы. Лицензия может быть программной (активация через сервис 1С) или аппаратной (USB-ключ HASP с установленным драйвером).

Служба srv1cv8 не стартует после установки. Что проверять в первую очередь?

Откройте журнал командой journalctl -u srv1cv8. Чаще всего причины: отсутствующие зависимости (доустановите через apt -f install), неверные права на каталог кластера (владелец должен быть usr1cv8) или занятый порт 1540 другим процессом.

Можно ли перенести базу с Windows-сервера 1С на Linux?

Да, стандартный путь — выгрузка базы в файл .dt через конфигуратор на старом сервере и загрузка на новом. Возможен и перенос средствами СУБД, если версии PostgreSQL совместимы. Перед переносом сделайте полную копию и проверьте работу базы на новом сервере в тестовом режиме.

Какой дистрибутив Linux выбрать для сервера 1С?

Выбирайте из списка официально поддерживаемых платформой — он публикуется в системных требованиях на сайте 1С. Внутри списка ориентируйтесь на опыт администратора и политику организации: Debian/Ubuntu удобны обилием документации, отечественные дистрибутивы — требованиями по сертификации.

Почему клиент не видит сервер 1С, хотя служба запущена?

Проверьте три вещи: открыты ли порты 1540–1541 и 1560–1591 в брандмауэре сервера, разрешается ли имя сервера в IP-адрес с клиентской машины (при необходимости добавьте запись в hosts) и совпадает ли версия платформы клиента с версией сервера.