Как обновить платформу для сервера 1С на Ubuntu: подробное пошаговое руководство

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

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

В рамках данной статьи мы подробно разберем, как правильно обновить серверную платформу 1С:Предприятие на операционной системе Ubuntu. Мы рассмотрим как классический метод ручного обновления через пакетный менеджер dpkg (актуальный для старых версий платформы), так и современный способ с использованием единого универсального инсталлятора, который компания 1С поставляет начиная с версии 8.3.20. Это позволит вам безопасно провести процедуру обновления без потери данных и длительного простоя пользователей.

Этап 1. Подготовка и резервное копирование

Любые манипуляции с серверным программным обеспечением несут потенциальные риски. Перед началом работ обязательно создадим резервные копии всех баз данных и настроек сервера 1С.

Выполним резервное копирование в несколько шагов:

  1. Завершение работы пользователей. Убедимся, что в системе нет активных сессий. Для этого можно воспользоваться консолью администрирования кластера 1С или утилитой администрирования RAS.
  2. Резервное копирование баз данных. Сделаем выгрузку информационных баз в файлы .dt через конфигуратор. Также крайне рекомендуется выполнить резервное копирование баз на уровне СУБД PostgreSQL. Для этого выполним команду в терминале Ubuntu: pg_dump -U postgres -F c -b -v -f /backup/db_name_$(date +%F).backup db_name
  3. Резервное копирование конфигурации кластера. Настройки самого кластера (список информационных баз, зарегистрированные администраторы, настройки блокировок) хранятся в домашнем каталоге пользователя, от имени которого работает сервер 1С (обычно это usr1cv8). Скопируем эту директорию в безопасное место. По умолчанию она находится по пути: /home/usr1cv8/.1cv8/1C/1cv8/. Выполним резервное копирование с помощью команды:
    
    sudo tar -cvzf /backup/1c_cluster_metadata_$(date +%F).tar.gz /home/usr1cv8/.1cv8/
    

После создания бэкапов мы можем переходить непосредственно к процедуре обновления. Рассмотрим два основных сценария в зависимости от используемой версии платформы.

Метод 1. Обновление классическим способом через DEB-пакеты (для версий до 8.3.20)

Этот способ применим, если вы обновляетесь на версии платформы ниже 8.3.20 (например, переходите с 8.2 на 8.3.9 или обновляете ранние релизы 8.3), где дистрибутив поставлялся в виде набора отдельных файлов архивов с расширением .deb.

Для начала остановим службу текущего сервера 1С. В зависимости от версии и способа установки это делается одной из следующих команд:


sudo service srv1cv82 stop
# или для версии 8.3:
sudo systemctl stop srv1cv83

Проверим текущий список установленных пакетов 1С в системе, чтобы понимать масштаб изменений:

dpkg -l | grep 1c-enterprise

Система выведет список установленных компонентов, например 1c-enterprise83-server, 1c-enterprise83-common, 1c-enterprise83-ws и другие. При переходе с одной версии на другую (особенно при смене мажорных версий, например с 8.2 на 8.3) рекомендуется полностью удалить старые пакеты, чтобы избежать конфликтов путей и служб.

Выполним полное удаление старых пакетов:


sudo dpkg -r 1c-enterprise82-ws-nls 1c-enterprise82-ws 1c-enterprise82-server-nls 1c-enterprise82-server 1c-enterprise82-common-nls 1c-enterprise82-common

После удаления пакетов могут остаться файлы конфигурации. Очистим их с помощью команды dpkg -P (purge):

sudo dpkg -P 1c-enterprise82-ws 1c-enterprise82-server

Теперь подготовим новые установочные файлы. Скачаем дистрибутивы "Cервер 1С:Предприятия для DEB-based Linux-систем" нужной разрядности и версии с официального портала технологической поддержки 1С. Распакуем скачанный архив в созданную директорию, например, /home/user/1c_distr/.

Перейдем в каталог с распакованными файлами .deb:

cd /home/user/1c_distr/

Обратите внимание на файлы локализации с суффиксом -nls (National Resource Files). Если на вашем сервере используется стандартная русская локаль и вам не требуется поддержка мультиязычных интерфейсов для других стран, ставить пакеты -nls нет необходимости. В современных дистрибутивах Linux они могут работать некорректно.

Запустим установку всех пакетов в каталоге одной командой:

sudo dpkg -i *.deb

В процессе установки пакетный менеджер может сообщить о неудовлетворенных зависимостях (отсутствии необходимых системных библиотек). Разрешим эту проблему, автоматически доустановив все недостающие системные пакеты из репозиториев Ubuntu:

sudo apt-get install -f -y

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


sudo apt-get install -y imagemagick unixodbc libgsf-bin t1utils ttf-mscorefonts-installer

После установки шрифтов Microsoft обновим системный кэш шрифтов:

sudo fc-cache -fv

Запустим службу нового сервера 1С:


sudo systemctl start srv1cv83
sudo systemctl enable srv1cv83

Метод 2. Современный метод обновления с использованием .run-инсталлятора (для версий 8.3.20+)

Начиная с версии платформы 8.3.20, фирма "1С" кардинально изменила систему распространения дистрибутивов для ОС Linux. Теперь вместо россыпи отдельных файлов .deb поставляется единый самораспаковывающийся архив, содержащий инсталлятор с расширением .run (например, setup-full-8.3.25.1560-x86_64.run).

Этот подход предлагает ключевое преимущество — возможность параллельной установки нескольких версий платформы. Больше не требуется удалять предыдущую версию перед обновлением. Файлы разных версий будут находиться в изолированных каталогах внутри директории /opt/1cv8/x86_64/версия_платформы/.

Рассмотрим процесс обновления по шагам:

  1. Скачаем архив с единым дистрибутивом новой версии платформы 1С для Linux (64-bit) и распакуем его.
  2. Предоставим распакованному файлу .run права на исполнение: chmod +x setup-full-8.3.25.1560-x86_64.run
  3. Запустим инсталлятор в консольном («тихом») режиме без использования графической оболочки, указав необходимые для установки компоненты (сервер и модули веб-сервера):
    
    sudo ./setup-full-8.3.25.1560-x86_64.run --mode unattended --enable-components server,ws
    
    Если на вашем сервере установлена графическая оболочка, вы можете запустить файл без параметров, и перед вами откроется интерактивный графический мастер установки, аналогичный мастеру в Windows.

После успешной установки файлы новой версии появятся на сервере параллельно со старыми. Теперь нам нужно переключить запуск службы на новую версию.

В современных версиях платформы запуск и управление процессами осуществляются через шаблоны служб systemd. Сначала остановим службу старой версии платформы:


sudo systemctl stop srv1cv8-8.3.18.1300@default.service
sudo systemctl disable srv1cv8-8.3.18.1300@default.service

Зарегистрируем в системе юнит-файл новой версии службы 1С. Для этого создадим символическую ссылку на шаблон службы из каталога новой установленной платформы:

sudo systemctl link /opt/1cv8/x86_64/8.3.25.1560/srv1cv8-8.3.25.1560@.service

Запустим службу нового сервера 1С (экземпляр по умолчанию — default) и добавим её в автозагрузку операционной системы:


sudo systemctl start srv1cv8-8.3.25.1560@default.service
sudo systemctl enable srv1cv8-8.3.25.1560@default.service

Проверим статус запущенной службы, чтобы убедиться, что сервер работает корректно и без ошибок:

sudo systemctl status srv1cv8-8.3.25.1560@default.service

Этап 3. Обновление службы удаленного администрирования (RAS)

Если для управления сервером вы используете консоль администрирования 1С с удаленного компьютера, вам потребуется обновить службу сервера администрирования RAS. В современных версиях она также регистрируется как отдельный юнит systemd.

Остановим и отключим старую службу RAS:


sudo systemctl stop ras-8.3.18.1300.service
sudo systemctl disable ras-8.3.18.1300.service

Зарегистрируем и запустим службу RAS для новой версии платформы:


sudo systemctl link /opt/1cv8/x86_64/8.3.25.1560/ras-8.3.25.1560.service
sudo systemctl start ras-8.3.25.1560.service
sudo systemctl enable ras-8.3.25.1560.service

Этап 4. Возможный откат на предыдущую версию и очистка

Главное преимущество параллельной установки по методу 2 заключается в простоте отката в случае непредвиденных сбоев при запуске баз данных на новой платформе. Если возникли проблемы, вы можете вернуться на стабильную старую версию всего за несколько минут. Для этого достаточно остановить службу новой версии и запустить старую:


sudo systemctl stop srv1cv8-8.3.25.1560@default.service
sudo systemctl start srv1cv8-8.3.18.1300@default.service

Если же новая версия платформы работает стабильно и переход выполнен успешно, старую версию платформы можно безопасно удалить для экономии свободного места на сервере. Для этого перейдем в каталог старой версии и запустим встроенную утилиту деинсталляции:


cd /opt/1cv8/x86_64/8.3.18.1300/
sudo ./uninstaller-full

Таким образом, мы детально разобрали процесс обновления платформы 1С:Предприятие на сервере под управлением Ubuntu. Регулярное обновление платформы позволит вам беспрепятственно устанавливать новые релизы конфигураций, использовать современный функционал платформы и сохранять стабильность работы корпоративной системы.

← На главную