Перенос инфраструктуры 1С:Предприятие на операционную систему Linux становится всё более популярным решением для бизнеса, стремящегося снизить затраты на лицензирование и повысить стабильность работы серверов. Дистрибутив Ubuntu Server является одним из наиболее предпочтительных вариантов благодаря своей широкой поддержке сообщества и длительному циклу обновлений LTS. Однако процесс установки требует внимательности к деталям, так как архитектура Linux кардинально отличается от привычной среды Windows.
В данной статье мы подробно разберем весь путь от подготовки окружения до запуска первого сеанса пользователя. Вы узнаете, как правильно установить сервер приложений, настроить СУБД PostgreSQL и подключить клиентскую часть. Особое внимание будет уделено нюансам работы с репозиториями и правами доступа, которые часто вызывают трудности у начинающих администраторов.
Перед началом работ убедитесь, что у вас есть действующий дистрибутив сервера 1С и необходимые ключи защиты. Установка на виртуальную машину или выделенный сервер потребует выделения достаточного количества оперативной памяти, так как платформа достаточно требовательна к ресурсам при активной работе пользователей.
Подготовка системы и установка зависимостей
Первым шагом является обновление пакетной базы и установка необходимых библиотек, без которых сервер 1С не сможет корректно функционировать. Многие пользователи совершают ошибку, пытаясь запустить установщик сразу после чистой установки ОС, что приводит к ошибкам зависимостей. Система должна быть полностью актуальной.
Откройте терминал и выполните команду обновления списков пакетов. Это гарантирует, что вы получите последние версии зависимостей из репозиториев Canonical. Также необходимо установить утилиты для работы с архивами и сетевыми запросами.
sudo apt update && sudo apt upgrade -y
sudo apt install libicu70 libpng16-16 libjpeg8 -y
Обратите внимание, что версия библиотеки libicu может отличаться в зависимости от версии Ubuntu, которую вы используете. Для Ubuntu 22.04 актуальна версия 70, однако для более старых или новых релизов номер может измениться. Несоответствие версии libicu является самой частой причиной отказа запуска сервера 1С на Linux.
⚠️ Внимание: Если вы используете версию Ubuntu новее той, для которой выпущен дистрибутив 1С, некоторые системные библиотеки могут отсутствовать в репозиториях. В таком случае может потребоваться ручная установка совместимых версий или использование контейнеризации.
После установки базовых зависимостей рекомендуется перезагрузить систему, чтобы применить все изменения ядра и библиотек. Это простой шаг, который часто игнорируют, но он помогает избежать конфликтов в работе сетевых служб и демонов.
Используйте команду `ldd /opt/1C/v8.3/x86_64/1C:Enterprise8.3-srv /usr/bin/1C:Enterprise8.3-srv` для проверки отсутствия отсутствующих библиотек перед запуском сервиса.
Загрузка и установка сервера 1С:Предприятие
Процесс установки сервера 1С на Linux отличается от Windows отсутствием привычного графического мастера с кнопкой "Далее". Здесь используется консольный установщик или пакетный менеджер dpkg. Вам необходимо скачать актуальный дистрибутив с официального сайта партнеров или из личного кабинета users.v8.1c.ru.
Файлы дистрибутива обычно поставляются в формате .deb. Переместите скачанные пакеты в отдельную директорию для удобства работы. Вам понадобятся как минимум два пакета: сервер 1С и модуль расширения веб-сервера (если планируется веб-доступ).
- 📦 Сервер 1С:Предприятие — основной пакет, содержащий ядро сервера и служебные утилиты.
- 🌐 Модуль расширения веб-сервера — необходим для публикации баз в Apache или Nginx.
- 🖥️ Тонкий клиент — опционально, если вы планируете запускать интерфейс прямо на сервере для отладки.
Установка производится последовательно. Сначала устанавливается сервер, затем дополнительные компоненты. Используйте команду dpkg -i для каждого файла. Если система сообщит об ошибках зависимостей, выполните команду apt --fix-broken install, которая автоматически докачает недостающие компоненты.
sudo dpkg -i 1c-enterprise83-common_8.3.*_amd64.deb
sudo dpkg -i 1c-enterprise83-server_8.3.*_amd64.deb
☑️ Проверка установки сервера
После успешной установки сервис сервера 1С должен быть автоматически зарегистрирован в системе инициализации systemd. Однако по умолчанию он может не запускаться автоматически при старте системы, поэтому это нужно проверить и настроить вручную.
Настройка СУБД PostgreSQL для работы с 1С
Для работы кластера 1С требуется надежная система управления базами данных. Хотя платформа поддерживает MS SQL и Oracle, в среде Linux стандартом де-факто является PostgreSQL**. Важно установить версию СУБД, сертифицированную фирмой "1С", чтобы избежать проблем с производительностью и целостностью данных.
Установка PostgreSQL в Ubuntu проста и выполняется через стандартный менеджер пакетов. Однако критически важным этапом является настройка прав доступа и кодировки. База данных должна быть создана с кодировкой UTF8 и локалью ru_RU.UTF-8.
| Параметр | Рекомендуемое значение | Описание |
|---|---|---|
| Кодировка | UTF8 | Обязательна для корректного хранения русских символов |
| Пользователь БД | postgres | Суперпользователь СУБД |
| Порт | 5432 | Стандартный порт подключения |
| Локаль | ru_RU.UTF-8 | Определяет правила сортировки и форматирования |
После установки необходимо создать пользователя в PostgreSQL, от имени которого 1С будет подключаться к базам данных. Это делается через утилиту psql. Не используйте пользователя postgres для непосредственной работы приложений из соображений безопасности.
sudo -u postgres createuser --createdb --no-login --pwprompt usr1cv8
⚠️ Внимание: Пароль для пользователя базы данных должен быть сложным и храниться в надежном месте. Потеря пароля потребует сброса прав доступа на уровне конфигурационных файлов СУБД.
Не забудьте отредактировать файл конфигурации pg_hba.conf, чтобы разрешить подключения к базе данных с IP-адреса сервера 1С. По умолчанию PostgreSQL может принимать соединения только через локальный сокет, что заблокирует работу кластера.
Настройка pg_hba.conf для локального подключения
Добавьте строку "host all usr1cv8 127.0.0.1/32 md5" в конец файла конфигурации, чтобы разрешить подключение по TCP/IP с локальной машины с использованием пароля.
Регистрация и запуск службы сервера 1С
После установки всех компонентов необходимо зарегистрировать сервер 1С в системе. Для этого используется специальная утилита ras (Register Agent Server), но в современных версиях дистрибутива регистрация часто происходит автоматически при установке пакетов.
Тем не менее, вам необходимо убедиться, что служба активна. Проверьте статус сервиса с помощью команды systemctl status srv1cv83. Если служба неактивна, запустите её и добавьте в автозагрузку. Это гарантирует, что сервер 1С поднимется сразу после перезагрузки оборудования.
sudo systemctl enable srv1cv83
sudo systemctl start srv1cv83
Важным этапом является настройка прав доступа к каталогам данных. Сервер 1С работает от имени системного пользователя usr1cv8. Убедитесь, что у этого пользователя есть права на запись в директорию /var/lib/1C и другие служебные папки.
- 🔒 Права доступа — проверьте владельца файлов командой
ls -l /var/lib/1C. - 🛡️ Брандмауэр — откройте порт 1541 для работы кластера и 1540 для менеджера кластера.
- 📝 Логирование — настройте ротацию логов, чтобы они не занимали всё дисковое пространство.
Служба srv1cv83 должна работать от имени пользователя usr1cv8, а не root. Запуск от root возможен, но не рекомендуется из соображений безопасности.
Если при запуске возникают ошибки, первым делом проверяйте журнал событий Linux (/var/log/syslog) и логи самого сервера 1С, которые обычно находятся в /var/log/1C. Там содержится подробная информация о причинах сбоя.
Создание информационной базы и публикация
Когда сервер запущен и СУБД настроена, можно приступать к созданию первой информационной базы. Это делается через консольную утилиту rac (Register Agent Client). Она позволяет управлять кластером серверов, создавать рабочие процессы и регистрировать базы данных.
Для создания базы вам понадобится имя кластера (по умолчанию localhost:1540), имя базы и путь к файлам конфигурации или шаблону. Если вы разворачиваете пустую базу, можно указать минимальные параметры. Для развертывания конфигурации из файла .cf или .dt потребуются дополнительные ключи.
rac cluster create --cluster=localhost:1540
rac infobase create --cluster=localhost:1540 --name="MyBase" --dbms=postgresql --dbserver=localhost --dbname=mybase --db-user=usr1cv8
После создания базы в кластере её необходимо опубликовать на веб-сервере, если вы планируете использовать тонкий клиент через HTTP или веб-браузер. Для этого используется утилита webinst, которая автоматически прописывает необходимые директивы в конфигурацию Apache или Nginx.
⚠️ Внимание: При публикации базы убедитесь, что веб-сервер установлен и настроен. Утилита webinst не устанавливает веб-сервер автоматически, она лишь конфигурирует существующий.
Команда публикации создаст виртуальный каталог на веб-сервере, через который клиенты смогут подключаться к базе. Проверьте доступность адреса через браузер, введя URL вида http://server_ip/BaseName.
Команда для публикации в Apache
webinst --apache-2.4 --ws-dir /var/www/1c --base-dir /opt/1C/v8.3/x86_64 --conn "Srvr="localhost" Ref="MyBase"" --conf /etc/apache2/apache2.conf
Диагностика проблем и оптимизация работы
Работа сервера 1С на Linux требует постоянного мониторинга. Основные проблемы обычно связаны с нехваткой оперативной памяти, блокировками портов или некорректными правами доступа к файлам. Регулярный анализ логов помогает предотвращать критические сбои.
Для оптимизации производительности рекомендуется настроить параметры рабочих процессов в кластере серверов. Вы можете ограничить количество процессов, работающих с одной базой, или настроить время жизни процесса. Это позволяет более рационально использовать ресурсы сервера.
Используйте утилиту top или htop для мониторинга потребления ресурсов процессом rbagent и rphost. Если потребление памяти растет неограниченно, возможно, требуется обновление платформы или оптимизация кода конфигурации.
Почему сервер 1С не запускается после установки?
Наиболее частая причина — отсутствие необходимых библиотек (особенно libicu) или конфликт портов. Проверьте логи в /var/log/1C и убедитесь, что порт 1540 не занят другим приложением.
Как сбросить пароль администратора кластера 1С?
Пароль администратора кластера хранится в файле реестра кластера. Для сброса можно остановить службу, удалить файл reg_1CV8 и запустить службу заново, но это сбросит все настройки кластера.
Можно ли установить 1С на Ubuntu Desktop?
Да, можно. Разница лишь в наличии графического интерфейса. Серверные компоненты будут работать идентично, однако Ubuntu Server предпочтительнее из-за меньшего потребления ресурсов.
Какая версия PostgreSQL лучше для 1С на Ubuntu?
Рекомендуется использовать версию, указанную в сертификате фирмы 1С для конкретного релиза платформы. Обычно это PostgreSQL 9.6, 11 или 13. Более новые версии могут требовать дополнительной настройки.