1С:Предприятие 8.3 под Ubuntu: нативный клиент, сервер и первая база
Содержание
Чтобы запустить 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, поэтому надёжнее всего действовать так:
- Установите основное:
sudo apt install libgsf-1-114 libglib2.0-0 libfreetype6. - Поставьте платформу (следующий раздел).
- Проверьте, каких библиотек не хватает, через
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, но для новой установки берите актуальную.
Графическая установка
- Распакуйте архив и дайте файлу права на запуск:
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С — если машина будет сервером, модуль веб-сервера — если планируете публикацию, и обязательно русский интерфейс.
- Дождитесь окончания. Платформа ляжет в
/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 — это установка новой версии рядом со старой. Порядок для сервера такой:
- Поставьте новую версию тем же установщиком с теми же компонентами.
- Предупредите пользователей: при остановке старой службы все сеансы серверных баз оборвутся.
- Остановите и отключите службу старой версии:
sudo systemctl disable --now srv1cv8-<старая>@default. - Подключите и запустите службу новой версии, как описано в разделе про сервер.
- Обновите платформу на всех клиентах до той же версии — тонкий клиент другой версии к серверу не подключится.
Кластер и список баз сохраняются: они лежат в каталоге пользователя 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-вариант.
Добавление базы
- В окне запуска нажмите
Добавитьи выберите добавление существующей базы. - Укажите тип расположения:
- 📁 на этом компьютере или в локальной сети — для файловой базы, путь вида
/home/user/1c/buh; - 🖥️ на сервере 1С:Предприятия — имя кластера (
srv1c) и имя базы (buh); - 🌐 на веб-сервере — адрес публикации.
- 📁 на этом компьютере или в локальной сети — для файловой базы, путь вида
- Выберите версию платформы и режим: тонкий или толстый клиент.
- Нажмите
Готово, выделите базу и нажмите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С.