Переход бухгалтерских и торговых систем на операционные системы семейства Linux становится стандартом для многих предприятий, стремящихся к независимости от зарубежного ПО. Однако администрирование 1С:Предприятие в среде Ubuntu имеет свои нюансы, отличные от привычной Windows-экосистемы. Процесс обновления здесь требует внимательности к зависимостям пакетов, версиям библиотек и правам доступа к файловой системе.
В отличие от автоматических обновлений в графическом интерфейсе Windows, в Linux администратор должен четко понимать разницу между обновлением самой платформы (исполняемых файлов) и обновлением конфигурации базы данных. Ошибки на любом из этих этапов могут привести к простою работы отдела бухгалтерии или склада. В этом материале мы детально разберем процедуру апгрейда компонентов 1С:Предприятие 8.3 на сервере под управлением Ubuntu, уделив внимание критическим моментам безопасности данных.
Перед началом активных действий необходимо убедиться, что у вас есть актуальные резервные копии баз данных и файлов конфигурации. Даже если вы уверены в своих навыках работы с терминалом, человеческий фактор или внезапный сбой электропитания могут сыграть злую шутку. Подготовка инфраструктуры — это фундамент стабильной работы вашей учетной системы.
Подготовка сервера и проверка текущей версии
Первым шагом перед установкой новых пакетов является диагностика текущего состояния системы. Вам необходимо точно знать, какая версия платформы 1С:Предприятие установлена в данный момент, чтобы корректно подобрать дистрибутив для обновления. Также важно проверить свободное место на диске, так как процесс распаковки и установки может требовать дополнительного пространства.
Для получения информации о текущей версии используйте команду запроса статуса пакета. В терминале введите команду dpkg -l | grep 1c-enterprise, которая выведет список установленных пакетов, связанных с платформой. Обратите внимание на номер версии в третьей колонке вывода — именно от этой цифры вы будете отталкиваться при выборе нового релиза.
⚠️ Внимание: Никогда не пытайтесь обновить платформу 1С, если на сервере запущены активные пользовательские сеансы. Принудительная остановка служб может привести к повреждению файлов блокировок или временных таблиц в оперативной памяти.
Убедитесь, что репозитории системы обновлены, чтобы избежать конфликтов зависимостей при установке новых библиотек. Выполните стандартную процедуру обновления списков пакетов через sudo apt update. Это действие синхронизирует локальный индекс пакетов с серверами Canonical, что критически важно для корректной работы менеджера пакетов apt.
☑️ Готовность к обновлению
Загрузка дистрибутивов и работа с репозиториями
Официальные дистрибутивы платформы 1С для Linux распространяются в формате deb-пакетов. Их можно загрузить непосредственно с портала поддержки пользователей 1С или с сайта дистрибуции релизов. Важно скачать полный набор пакетов, включающий сервер 1С:Предприятия, клиентскую часть (тонкий клиент), а также модули расширения веб-сервера, если вы используете публикацию баз через Apache или Nginx.
Существует два основных подхода к получению файлов: ручная загрузка через браузер и использование утилит командной строки. Для автоматизации процесса опытные администраторы часто используют wget или curl, заранее получив прямые ссылки на файлы. Это позволяет скриптовать процесс обновления и минимизировать влияние человеческого фактора.
После загрузки файлов в рабочую директорию, например /tmp/1c_update, необходимо проверить целостность пакетов. Хотя современные менеджеры пакетов делают это автоматически, предварительная проверка контрольных сумм (если они предоставлены вендором) добавляет уровень уверенности в том, что файл не был поврежден при передаче по сети.
Где искать пакеты для разных архитектур?
Если ваш сервер работает на процессоре ARM (например, Raspberry Pi или некоторые облачные инстансы), убедитесь, что скачиваете пакеты с пометкой arm64. Для стандартных серверов на Intel или AMD требуется архитектура amd64. Попытка установить пакет неверной архитектуры приведет к ошибке зависимостей.
Помните, что версия сервера 1С и версия клиентского приложения должны быть совместимы. Хотя платформа обладает определенной степенью обратной совместимости, значительный разрыв в версиях (например, сервер 8.3.20 и клиент 8.3.10) может вызвать ошибки при подключении или некорректное отображение интерфейса.
Процедура обновления платформы 1С:Предприятие
Непосредственная установка новых версий производится с использованием утилиты dpkg или надстройки apt. Рекомендуется использовать apt с указанием пути к локальным файлам, так как этот инструмент автоматически разрешает зависимости и предлагает установить недостающие библиотеки. Перейдите в директорию с загруженными пакетами и выполните команду установки.
sudo apt install ./1c-enterprise83-server_*.deb ./1c-enterprise83-client_*.deb
В процессе установки система может запросить подтверждение замены конфигурационных файлов. Если вы вносили правки в файлы настройки сервера (например, srvinfo/reg_1541/1CV8Reg.dat), внимательно читайте подсказки терминала. В большинстве случаев безопаснее сохранить текущую версию файла конфигурации, чтобы не потерять специфические настройки вашего окружения.
⚠️ Внимание: При обновлении с версии ниже 8.3.15 на более новые релизы может измениться механизм работы с лицензиями HASP или программными пин-кодами. Убедитесь, что драйзмы защиты ключей также обновлены до версии, совместимой с новой платформой.
После успешной установки пакетов необходимо перезапустить службы сервера 1С. Это обязательное условие для того, чтобы новые исполняемые файлы rmngr (менеджер кластера) и rphost (рабочий процесс) начали использоваться системой. Команда для перезапуска зависит от версии Ubuntu, но обычно выглядит как sudo systemctl restart srv1cv83.
Обновление СУБД PostgreSQL и совместимость
Платформа 1С:Предприятие тесно интегрирована с системой управления базами данных, и чаще всего в связке с Linux используется PostgreSQL. Обновление самой платформы 1С не требует обязательного обновления СУБД, если текущая версия базы данных поддерживается новым релизом 1С. Однако, если вы планируете обновлять и PostgreSQL, необходимо свериться с таблицей совместимости.
Разные версии 1С требуют различных минимальных версий PostgreSQL. Использование устаревшей СУБД с новой платформой может привести к ошибкам при выполнении сложных запросов или созданию новых баз данных. Ниже приведена справочная таблица соответствия версий, актуальная для большинства промышленных сценариев.
| Версия платформы 1С | Рекомендуемая версия PostgreSQL | Минимальная версия PostgreSQL | Статус поддержки |
|---|---|---|---|
| 8.3.22 и выше | 13, 14, 15 | 9.6 | Полная |
| 8.3.18 - 8.3.21 | 11, 12, 13 | 9.6 | Полная |
| 8.3.15 - 8.3.17 | 9.6, 10, 11 | 9.6 | Ограниченная |
| 8.3.10 - 8.3.14 | 9.6, 10 | 9.3 | Устаревшая |
Если ваше обновление 1С требует более новой версии PostgreSQL, процедура становится сложнее. Вам потребуется выполнить дамп базы данных, установить новую версию СУБД, восстановить дамп и прогнать утилиты оптимизации vacuumdb. Никогда не заменяйте бинарные файлы PostgreSQL "на лету" без выгрузки данных, это гарантированно приведет к потере информации.
Не забудьте обновить расширение pgcrypto внутри базы данных 1С, если это требуется новым релизом платформы. Это делается командой SQL ALTER EXTENSION pgcrypto UPDATE;, выполненной от имени суперпользователя базы данных. Отсутствие этого шага может вызвать ошибки при работе с зашифрованными данными или паролями пользователей.
Обновление конфигурации базы данных
После того как программное обеспечение платформы и СУБД приведены в актуальное состояние, наступает этап обновления конфигурации базы данных. Это процесс, в ходе которого структура таблиц, метаданные и программный код конфигурации (например, "Бухгалтерия предприятия" или "Управление торговлей") приводятся в соответствие с новым релизом от фирмы 1С.
Для выполнения этой операции запустите конфигуратор 1С в режиме предприятия или через консоль, используя ключи командной строки. Наиболее надежный способ для серверного варианта — использование утилиты 1cv8 с параметром /UpdateDBCfg. Пример команды выглядит следующим образом:
/opt/1C/v8.3/x86_64/1cv8 -UpdateDBCfg /Sserver_name/base_name /NAdmin /Ppassword
В процессе обновления конфигурации система может предложить выполнить-scripts постобработки. Согласитесь с этим предложением, так как эти скрипты часто содержат важные изменения в регистрах сведений или пересчет итогов, необходимые для корректной работы новых функций.
Если обновление конфигурации прервалось из-за ошибки блокировки, проверьте, не запущен ли фоновый job (например, обмен данными или закрытие месяца). Остановите фоновые задания перед повторным запуском обновления.
Обратите внимание, что время обновления конфигурации напрямую зависит от размера базы данных и сложности изменений в новом релизе. Для крупных баз этот процесс может занять от нескольких минут до нескольких часов. Запланируйте работы на нерабочее время, чтобы не блокировать доступ пользователей к системе.
Диагностика проблем и восстановление работоспособности
После завершения всех процедур обновления необходимо провести комплексную проверку работоспособности системы. Первым делом попробуйте подключиться к базе данных в режиме 1С:Предприятие под пользователем с полными правами. Проверьте открытие основных форм, проведение документов и формирование отчетов.
Если при запуске возникают ошибки, первым местом для поиска причины являются журналы регистрации событий. В Linux они обычно расположены в директории /var/log/1c или внутри каталога данных сервера в подпапке log. Анализируйте файлы с расширением .log, обращая внимание на записи с уровнем критичности "Error" или "Exception".
⚠️ Внимание: Частой проблемой после обновления является потеря прав доступа к файлам журнала или каталогу временных файлов. Убедитесь, что пользователь, от имени которого запущен сервер 1С (обычно
usr1cv83), имеет права на запись в соответствующие директории.
В случае критических сбоев, когда база данных не открывается, может потребоваться откат к предыдущей версии платформы. Для этого удалите установленные пакеты новой версии и установите пакеты старой версии, которые вы предварительно сохранили. После отката платформы обязательно восстановите базу данных из резервной копии, сделанной перед началом работ, так как структура БД могла быть изменена неудачным обновлением конфигурации.
Золотое правило администратора: Обновление платформы 1С и обновление конфигурации базы данных — это два разных процесса. Сначала обновляем платформу (сервер и клиент), убеждаемся, что она работает, и только потом обновляем конфигурацию базы данных.
Часто задаваемые вопросы (FAQ)
Можно ли обновить 1С на Ubuntu без остановки службы сервера?
Технически пакеты установятся, но новые процессы не начнут использоваться до перезапуска службы srv1cv83. Без перезапуска старые процессы продолжат работать с ошибками или не увидят новых функций. Полная остановка службы обязательна для применения обновлений.
Что делать, если после обновления перестал работать веб-клиент?
Проверьте версию модуля веб-расширения (web-extension). При обновлении платформы серверная часть обновляется, но модуль для Apache/Nginx может остаться старым. Переустановите пакет 1c-enterprise83-ws и перезапустите веб-сервер.
Нужно ли обновлять драйверы ключей защиты HASP при обновлении 1С?
Да, если вы переходите на версию платформы 8.3.20 и выше, настоятельно рекомендуется использовать актуальные драйверы HASP (версии 7.10 и новее), так как в новых ядрах Linux старые драйверы могут не компилироваться или работать нестабильно.
Как откатиться на предыдущую версию, если обновление прошло неудачно?
Используйте команду apt install 1c-enterprise83-server=старая_версия, указав точный номер версии предыдущего пакета. После даунгрейда платформы обязательно восстановите базу данных из бэкапа, сделанного до начала обновления.
Влияет ли обновление Ubuntu (системных библиотек) на работу 1С?
Да, крупные обновления ОС (например, переход с Ubuntu 20.04 на 22.04) могут изменить версии системных библиотек (glibc, libstdc++), что может потребовать переустановки или пересборки компонентов 1С. Всегда тестируйте обновление ОС на копии сервера.