1С:Предприятие 8.3 под Ubuntu: нативный клиент, сервер и первая база

· 9 мин

Содержание

Чтобы запустить 1С на Ubuntu, ставьте нативную Linux-версию платформы 1С:Предприятие 8.3, а не Windows-дистрибутив через Wine. Скачайте с портала обновлений архив платформы для Linux (64-bit), установите клиент и, если нужно, сервер одним установщиком, затем запустите 1cestart из каталога /opt/1cv8/x86_64/<версия>/ и добавьте базу в список.

Частое заблуждение — что 1С «работает только на Windows» и под Ubuntu её надо эмулировать. Это не так: у платформы есть полноценный толстый и тонкий клиент, Конфигуратор и сервер 1С для Linux. Проблемы обычно не в самой 1С, а в мелочах окружения: не хватает библиотеки, не настроена русская локаль, имя сервера не резолвится или не активирована лицензия. Все эти места разобраны ниже по порядку.

Подготовка Ubuntu: локаль, шрифты и библиотеки

Платформа официально поддерживает LTS-выпуски Ubuntu. Нужна 64-битная система: 32-битных сборок для Linux у современных версий 8.3 нет. Перед установкой проверьте три вещи.

Русская локаль

Без локали ru_RU.UTF-8 сервер 1С не сможет корректно создать базу, а в клиенте возможны проблемы с сортировкой и кодировкой.

locale -a | grep ru_RU
sudo locale-gen ru_RU.UTF-8
sudo update-locale

Если первая команда ничего не вывела — локали нет, вторая её сгенерирует.

Шрифты

Конфигурации рассчитаны на шрифты Microsoft. Без них печатные формы «плывут», текст вылезает за рамки ячеек.

sudo apt update
sudo apt install ttf-mscorefonts-installer fontconfig
sudo fc-cache -fv

Установщик шрифтов попросит принять лицензию — подтвердите стрелками и Enter.

Библиотеки

Клиенту нужен WebKitGTK (через него отрисовываются HTML-поля, справка, часть форм). Серверу нужна libgsf и сопутствующие пакеты. Имя пакета WebKitGTK зависит от выпуска Ubuntu, поэтому надёжнее всего действовать так:

  1. Установите основное: sudo apt install libgsf-1-114 libglib2.0-0 libfreetype6.
  2. Поставьте платформу (следующий раздел).
  3. Проверьте, каких библиотек не хватает, через ldd — команда ниже покажет всё, что помечено not found.
cd /opt/1cv8/x86_64/8.3.*/
for f in *.so; do ldd "$f" | grep "not found"; done | sort -u

По имени файла из вывода найдите пакет: apt-file search <имя.so> (утилиту ставят командой sudo apt install apt-file && sudo apt-file update).

Сверяйте версию Ubuntu с требованиями конкретной версии платформы. Свежий выпуск ОС иногда приходит с новой веткой библиотек раньше, чем 1С успевает её поддержать. Для рабочего сервера берите LTS, который уже указан в системных требованиях вашей версии платформы.

Нативная версия или Wine: что выбрать

Коротко: нативная версия для 8.3, Wine — только для исключений.

СпособКогда подходитРиски
Нативный клиент 1С для LinuxПочти всегда: работа в базе, Конфигуратор, обновленияНужно один раз подобрать библиотеки
Тонкий клиент + сервер 1С на LinuxОфис, где база на сервере, а у пользователей UbuntuНужна настройка сервера и сети
Веб-клиент в браузереНет прав на установку ПОМедленнее, часть функций работает иначе
Windows-версия через WineСтарые внешние компоненты только под Windows, 1С 7.7Сбои печати, обменов, оборудования; поддержки нет

Wine всплывает в инструкциях по инерции: раньше Linux-клиент был беднее. Сейчас нативный клиент умеет то же, что Windows-версия, кроме внешних компонент, собранных только под Windows (часть драйверов торгового оборудования, старые COM-объекты). Если без такой компоненты не обойтись, рассмотрите отдельную Windows-машину или терминальный доступ к ней — это надёжнее Wine.

COM-соединение (V83.COMConnector) существует только в Windows. Обработки и внешние программы, которые на нём построены, в Linux не заработают ни нативно, ни стабильно через Wine.

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

Начиная с версии 8.3.20 Linux-дистрибутив поставляется одним установщиком — файлом setup-full-8.3.xx.xxxx-x86_64.run внутри архива. Раньше были отдельные .deb-пакеты; если у вас старая версия платформы, ставьте их через dpkg -i, но для новой установки берите актуальную.

Графическая установка

  1. Распакуйте архив и дайте файлу права на запуск:
tar -xzf server64_8_3_*.tar.gz
chmod +x setup-full-8.3.*-x86_64.run
sudo ./setup-full-8.3.*-x86_64.run
  1. В мастере отметьте нужные компоненты: клиент (толстый включает Конфигуратор), сервер 1С — если машина будет сервером, модуль веб-сервера — если планируете публикацию, и обязательно русский интерфейс.
  2. Дождитесь окончания. Платформа ляжет в /opt/1cv8/x86_64/8.3.xx.xxxx/, в меню приложений появятся ярлыки «1С:Предприятие».

Установка без графики (сервер)

На сервере без рабочего стола запускайте установщик в тихом режиме и перечислите компоненты:

sudo ./setup-full-8.3.*-x86_64.run --mode unattended \
  --enable-components server,ws,ru

Для рабочего места пользователя замените набор на client_full,ru (толстый клиент) или client_thin,ru (только тонкий). Компонент ru не пропускайте: без него интерфейс будет на английском.

Переход на новую версию платформы

Обновление платформы в Linux — это установка новой версии рядом со старой. Порядок для сервера такой:

  1. Поставьте новую версию тем же установщиком с теми же компонентами.
  2. Предупредите пользователей: при остановке старой службы все сеансы серверных баз оборвутся.
  3. Остановите и отключите службу старой версии: sudo systemctl disable --now srv1cv8-<старая>@default.
  4. Подключите и запустите службу новой версии, как описано в разделе про сервер.
  5. Обновите платформу на всех клиентах до той же версии — тонкий клиент другой версии к серверу не подключится.

Кластер и список баз сохраняются: они лежат в каталоге пользователя usr1cv8, а не в каталоге версии.

Несколько версий платформы спокойно живут рядом — каждая в своём каталоге. Лишние удаляйте штатным деинсталлятором из каталога версии, а не через rm -rf, иначе останутся ярлыки и записи службы.

Сервер 1С на Ubuntu: служба, кластер и база

Этот раздел нужен, если Ubuntu будет сервером для клиент-серверных баз. Для файловой базы на своём компьютере его можно пропустить.

Запуск службы

С версии 8.3.21 установщик кладёт в каталог платформы unit-файл systemd. Его нужно подключить и включить вручную (подставьте свой номер версии):

V=8.3.24.1548
sudo systemctl link /opt/1cv8/x86_64/$V/srv1cv8-$V@.service
sudo systemctl enable --now srv1cv8-$V@default
systemctl status srv1cv8-$V@default

Служба работает от пользователя usr1cv8, данные кластера хранит в /home/usr1cv8/.1cv8/1C/1cv8/. В выводе status должно быть active (running).

Порты и имя сервера

Клиент сначала обращается к агенту сервера (порт 1540), затем к менеджеру кластера (1541) и к рабочим процессам — по умолчанию диапазон 1560–1591. Если включён ufw, откройте их:

sudo ufw allow 1540:1541/tcp
sudo ufw allow 1560:1591/tcp

Имя сервера должно одинаково резолвиться и на самом сервере, и у клиентов. Сервер регистрирует кластер под своим hostname. Если клиент знает сервер только по IP, а в ответ получает имя, которое не может найти, подключение падает. Пропишите имя в DNS или в /etc/hosts на каждой машине:

192.168.1.10   srv1c

База данных: нужен PostgreSQL для 1С

Обычный PostgreSQL из репозитория Ubuntu для 1С не подходит: платформе нужны доработки, которых нет в ванильной сборке. Используйте специальную сборку PostgreSQL для 1С — дистрибутив выкладывает фирма 1С, есть и коммерческие сборки Postgres Pro с поддержкой 1С. Установите её, задайте пароль пользователю postgres и проверьте, что СУБД слушает порт 5432.

Создание базы через rac

Консоль администрирования с графикой есть только для Windows. В Ubuntu кластер администрируют утилитой rac, которая работает через сервер администрирования ras:

cd /opt/1cv8/x86_64/$V
sudo -u usr1cv8 ./ras cluster --daemon
./rac cluster list

Из вывода второй команды скопируйте cluster (UUID) и создайте базу:

./rac infobase --cluster=<UUID> create --create-database \
  --name=buh --dbms=PostgreSQL --db-server=localhost \
  --db-name=buh --locale=ru --db-user=postgres --db-pwd=<пароль>

Если какой-то параметр не принимается, сверьтесь со справкой: ./rac help infobase. Альтернатива — создать базу с рабочего места: в окне запуска 1С выбрать добавление новой базы на сервере 1С и указать те же параметры СУБД.

Запуск 1С на Ubuntu и подключение к базе

Из меню и из терминала

Ярлык «1С:Предприятие» в меню приложений запускает 1cestart — окно со списком баз. Если ярлыка нет, запустите вручную:

/opt/1cv8/x86_64/8.3.24.1548/1cestart

Список баз хранится в ~/.1C/1cestart/ibases.v8i. Его можно скопировать с Windows-машины коллеги — формат тот же, пути к файловым базам только поправьте на Linux-вариант.

Добавление базы

  1. В окне запуска нажмите Добавить и выберите добавление существующей базы.
  2. Укажите тип расположения:
    • 📁 на этом компьютере или в локальной сети — для файловой базы, путь вида /home/user/1c/buh;
    • 🖥️ на сервере 1С:Предприятия — имя кластера (srv1c) и имя базы (buh);
    • 🌐 на веб-сервере — адрес публикации.
  3. Выберите версию платформы и режим: тонкий или толстый клиент.
  4. Нажмите Готово, выделите базу и нажмите 1С:Предприятие или Конфигуратор.

Прямой запуск командой

Для ярлыка на рабочем столе или скрипта удобно запускать базу сразу, минуя список:

# файловая база, толстый клиент
/opt/1cv8/x86_64/8.3.24.1548/1cv8 ENTERPRISE /F"/home/user/1c/buh"

# серверная база, тонкий клиент
/opt/1cv8/x86_64/8.3.24.1548/1cv8c ENTERPRISE /S"srv1c\buh"

Те же параметры командной строки, что и в Windows, — /N и /P для пользователя и пароля, /ClearCache для очистки кэша.

Файловую базу держите на локальном диске Linux-машины. Сетевая папка Samba с Windows-сервера работает, но медленнее и чаще ловит блокировки при одновременной работе нескольких пользователей.

Лицензии 1С в Linux

Без лицензии платформа базу не откроет (кроме учебной версии). В Linux работают оба варианта.

  • 🔑 Программная лицензия. При первом запуске 1С предложит получить лицензию — введите пин-код из комплекта. Файлы лицензий в Linux лежат в /var/1C/licenses/. Если активация падает на записи, проверьте, что у пользователя есть права на этот каталог.
  • 🔌 USB-ключ HASP. Нужен драйвер ключа для Linux (пакет aksusbd от производителя ключей). После установки проверьте, что служба драйвера запущена и ключ виден в системе.

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

Если 1С на Ubuntu не запускается: диагностика и логи

Начинайте с запуска из терминала: в отличие от ярлыка, он покажет текст ошибки, а не просто «ничего не происходит».

Диагностика: выберите симптом

Где смотреть логи

ЧтоГде
Журнал службы сервера 1Сjournalctl -u srv1cv8-<версия>@default
Технологический журналвключается файлом logcfg.xml в каталоге /opt/1cv8/conf/
Журнал регистрации базыв Конфигураторе или в режиме 1С:Предприятие, раздел администрирования
Кэш клиента~/.1cv8/1C/1cv8/

Технологический журнал пишет много и быстро. Включайте его на время поиска проблемы, ограничивайте событиями (EXCP — исключения, CONN — соединения) и выключайте после, иначе он займёт диск.

Перезапуск службы srv1cv8-...@default обрывает сеансы всех пользователей серверных баз. Делайте его вне рабочего времени или предупредите людей заранее. Очистку кэша клиента (/ClearCache или удаление папок в ~/.1cv8/1C/1cv8/) выполняйте при закрытой 1С.

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

Работает ли под Ubuntu Конфигуратор?
Да. Толстый клиент для Linux включает Конфигуратор: можно обновлять конфигурацию, выгружать и загружать .dt, работать с расширениями.
Можно ли смешивать Ubuntu и Windows в одной сети?
Можно. Сервер 1С на Ubuntu спокойно обслуживает клиентов на Windows, и наоборот. Главное — одинаковая версия платформы на клиенте и сервере.
Нужна ли отдельная лицензия для Linux?
Нет. Лицензии 1С не делятся по операционным системам: тот же пин-код или ключ подходит для Linux.
Как запустить 1С 7.7 на Ubuntu?
Нативной версии 7.7 для Linux нет. Её запускают только через Wine или на отдельной Windows-машине, и поддержки такой схемы нет.
Какие ещё дистрибутивы Linux подходят?
Платформа работает на Debian-подобных и RPM-дистрибутивах, в том числе российских. Точный список смотрите в системных требованиях вашей версии платформы.