Определяем версию сервера 1С:Предприятия на практике
Содержание
Версия сервера 1С:Предприятия — это номер версии платформы, установленной на машине с сервером, например 8.3.24.1548. Быстрее всего её определить по пути к исполняемому файлу службы агента: имя папки с ragent.exe всегда содержит полный номер версии.
Знать точную версию сервера приходится перед обновлением платформы, при подключении нового клиента и при разборе ошибки Несоответствие версии клиента и сервера «1С:Предприятия». Все способы ниже — только на чтение: останавливать службу или завершать рабочие процессы, чтобы узнать версию
, не нужно.
На одной машине может быть установлено сразу несколько версий платформы. Поэтому вопрос почти всегда звучит не «какая версия стоит», а «какую версию реально использует запущенный сервер». Ответ даёт не список установленного ПО, а то, из какой папки стартует служба.
Версия сервера — это версия установленной платформы
Сервер 1С — это набор служб и процессов (ragent, rmngr, rphost), которые запускаются из каталога конкретной версии платформы. На Windows это обычно C:\Program Files\1cv8\8.3.24.1548\bin\, на Linux — /opt/1cv8/x86_64/8.3.24.1548/.
Номер версии в имени папки и есть версия сервера. Всё остальное — консоль, утилита rac, веб-модуль — лишь разные точки, из которых этот же номер можно увидеть.
Не путайте версию платформы с режимом совместимости конфигурации (например, «Версия 8.3.21»). Режим совместимости — свойство прикладного решения, он ограничивает набор доступных возможностей и к версии установленного сервера отношения не имеет.
Путь к службе агента сервера — самый надёжный способ
Служба агента сервера запускается из каталога версии, поэтому её путь — однозначный ответ.
На Windows:
- Откройте оснастку служб:
Win+R→services.msc→Enter. - Найдите службу, в описании которой есть «Агент сервера 1С:Предприятия» (в англоязычной системе — 1C:Enterprise 8.3 Server Agent).
- Двойной клик → поле
Путь к исполняемому файлу. Номер версии в пути — например...\1cv8\8.3.24.1548\bin\ragent.exe— это и есть версия сервера.
То же самое в командной строке, запущенной от администратора:
sc query | find /i "1C"
sc qc "1C:Enterprise 8.3 Server Agent"
Первая команда покажет имена зарегистрированных служб 1С (у именованных экземпляров имя отличается), вторая — путь к бинарнику выбранной службы вместе с номером версии в строке BINARY_PATH_NAME.
На Linux служба работает через systemd. Посмотрите, из какого каталога запущен агент:
systemctl status 'srv1cv8-*'
В выводе будет полный путь к ragent, например /opt/1cv8/x86_64/8.3.24.1548/ragent. Номер в пути — версия сервера.
Если на машине установлено несколько версий платформы, ориентируйтесь именно на путь запущенной службы, а не на самую свежую установленную папку. Служба может работать на старой версии, даже если рядом стоит более новая.
Отдельный случай — именованные экземпляры сервера. На одной машине их может быть несколько, у каждого своя служба агента, свой порт и, что важно, потенциально своя версия платформы. Поэтому sc query сначала показывает все службы 1С, и путь нужно смотреть у той, что относится к интересующему вас экземпляру.
Обратите внимание и на разрядность каталога: современный сервер почти всегда 64-разрядный, его бинарники лежат в ...\1cv8\<версия>\bin\ с 64-битной платформой (на Linux — x86_64). 32-разрядный сервер сегодня встречается редко, но если в пути вместо x86_64 стоит i386 или каталог Program Files (x86), перед вами 32-битная сборка той же версии.
Свойства процессов ragent и rphost в диспетчере задач
Если доступ к настройкам служб закрыт, версию покажут свойства уже запущенных процессов.
На Windows откройте диспетчер задач (Ctrl+Shift+Esc) → вкладка Подробности. Найдите процессы сервера:
ragent.exe— агент сервера;rmngr.exe— менеджер кластера;rphost.exe— рабочий процесс (их может быть несколько).
Правый клик по ragent.exe → Свойства → вкладка Подробности → строка Версия продукта. Там будет полный номер, например 8.3.24.1548. Можно открыть и расположение файла (Открыть расположение файла) — путь снова приведёт в папку версии.
Ещё один надёжный источник на Windows — список установленных программ: Параметры → Приложения (или Панель управления → Программы и компоненты). Записи вида «1С:Предприятие 8.3 (8.3.24.1548)» показывают все установленные версии. Какая из них работает сервером — определяют по пути службы из предыдущего раздела.
Консоль администрирования серверов 1С
Графическая консоль (оснастка MMC «Администрирование серверов 1С Предприятия») удобна для управления кластером, но прямого столбца «версия сервера» в ней нет.
Сама консоль привязана к версии платформы: её файлы лежат в том же каталоге ...\1cv8\<версия>\bin\. Номер версии видно в заголовке окна или в пункте меню Справка → О программе. Версия консоли должна совпадать с версией сервера, к которому вы подключаетесь — иначе подключение к агенту завершится ошибкой несоответствия версий. Именно эта связь и позволяет косвенно подтвердить версию: если консоль нужной версии подключилась к центральному серверу — сервер работает на ней же.
Что реально полезно смотреть в консоли:
- список рабочих серверов кластера (ветка
Серверы); - рабочие процессы и их загрузку (ветка
Рабочие процессы); - сеансы и соединения перед обновлением.
Для точного номера версии всё равно надёжнее путь службы или свойства процесса на самой машине сервера.
Удалённая проверка утилитой rac
Утилита командной строки rac — это консольный клиент администрирования. Она лежит в том же каталоге версии (...\1cv8\<версия>\bin\rac.exe на Windows, /opt/1cv8/.../rac на Linux) и подключается к агенту сервера по порту 1540.
rac версионно-зависима так же, как консоль: запустить её нужно из каталога той версии, что совпадает с сервером. Поэтому папка, из которой rac успешно соединяется с агентом, уже отвечает на вопрос о версии.
Базовая проверка, что агент жив и отвечает:
rac cluster list
Команда вернёт список кластеров с их идентификаторами (UUID). Дальше по идентификатору кластера можно посмотреть рабочие серверы:
rac server list --cluster=<uuid-кластера>
Полный перечень доступных подкоманд выводит встроенная справка:
rac help
По умолчанию rac обращается к агенту на локальной машине и порту 1540. Для удалённого сервера укажите его адрес первым параметром, например rac <адрес-сервера> cluster list. Не выдумывайте флаги утилиты — если нужной команды нет в rac help, значит её и нет.
Клиент-серверная схема 1С работает так: клиент обращается к агенту (порт 1540), затем к менеджеру кластера (1541) и к рабочим процессам (диапазон портов задаётся в свойствах рабочего сервера). Консоль и rac идут через агент, поэтому сверять версию удобнее всего именно по нему.
Практический вывод: если вы администрируете сервер с другой машины, держите под рукой rac и консоль ровно той версии, что стоит на сервере. При обновлении платформы на сервере обновите инструменты администрирования на своём рабочем месте — иначе после апгрейда ни консоль, ни rac к агенту не подключатся, и вы потратите время на разбор «ошибки подключения», которая на деле означает лишь расхождение версий.
Версия модуля веб-публикации (IIS и Apache)
Если к серверу обращаются через веб-клиент или опубликованный сервис, в дело вступает модуль расширения веб-сервера. Он тоже versioned и лежит в каталоге платформы — по нему видно, какой версией опубликована база.
На IIS:
- Откройте
Диспетчер служб IIS(inetmgr). - Выберите опубликованное приложение → раздел
Сопоставления обработчиков(Handler Mappings). - В пути к библиотеке-обработчику будет каталог версии, например
...\1cv8\8.3.24.1548\bin\wsisapi.dll.
На Apache версия видна в конфигурации публикации — в директиве загрузки модуля (LoadModule) прописан полный путь к библиотеке веб-расширения с номером версии в имени папки.
Версия веб-модуля должна совпадать с версией сервера, к которому он подключается. Если базу переопубликовали новой платформой, а сервер оставили на старой (или наоборот), веб-клиент начнёт выдавать ошибку несоответствия версий. При обновлении платформы публикацию нужно пересоздавать той же версией.
Журнал регистрации и технологический журнал
Логи помогают, когда до самой машины сервера доступа нет, а подключиться клиентом можно.
Самый наглядный сигнал — ошибка при подключении клиента другой версии: платформа покажет сообщение Несоответствие версии клиента и сервера «1С:Предприятия» и укажет в нём оба номера. Это прямой способ прочитать версию сервера «со стороны клиента».
Технологический журнал сервера (настраивается файлом logcfg.xml в каталоге conf платформы) пишет служебные события кластера, включая запуск процессов. Если журнал уже включён, в его записях о старте можно увидеть каталог версии, из которого поднялись процессы.
Журнал регистрации информационной базы хранит прикладные события (входы, изменения данных, ошибки) и для определения версии платформы малопригоден — он не фиксирует номер версии сервера как отдельное поле. Поэтому для версии опирайтесь на техжурнал и на сообщение о несоответствии при подключении, а не на журнал регистрации.
Если серверов в кластере несколько
В кластере может быть центральный сервер и один или несколько рабочих серверов. Версию проверяют на каждой машине отдельно — по пути её службы агента или по свойствам процессов. Единого места, где видны версии всех узлов сразу, в стандартных средствах нет: ни консоль, ни rac не выводят номер платформы по каждому рабочему серверу.
Главное правило кластера — все рабочие серверы должны работать на одной версии платформы. Смешанные версии приводят к нестабильной работе рабочих процессов и ошибкам при переносе сеансов между серверами.
Параметры каждого рабочего сервера — диапазон портов рабочих процессов, требования назначения функциональности, параметры отказоустойчивости — задаются в его свойствах в консоли администрирования. Версия платформы там не отображается, но сам факт, что рабочий сервер виден в списке и принимает нагрузку, означает, что его служба запущена и совместима с остальными узлами кластера. Поэтому порядок проверки простой: сначала убедитесь по rac server list --cluster=<uuid> или в консоли, что все рабочие серверы на месте, затем на каждой машине сверьте путь службы агента.
Для наглядности сведём способы в таблицу — она помогает выбрать подходящий под ваш уровень доступа.
| Способ | Где смотреть | Что получите |
|---|---|---|
| Служба агента | services.msc → свойства, путь к файлу | Точный номер версии в пути |
| Процессы | Диспетчер задач → ragent.exe → свойства | Поле «Версия продукта» |
| Установленные программы | Программы и компоненты | Все установленные версии (не только рабочую) |
Консоль / rac | Подключение к агенту (порт 1540) | Косвенно: версия клиента = версии сервера |
| Веб-модуль | Путь обработчика в IIS/Apache | Версия, которой опубликована база |
| Ошибка подключения | Сообщение о несоответствии версий | Номер версии сервера «со стороны» |
При обновлении кластера версию обновляют на всех узлах синхронно: сначала выводят сеансы пользователей, затем обновляют платформу на каждой машине, и только потом запускают службы. Проверка пути службы на каждом узле после обновления — быстрый способ убедиться, что нигде не осталась старая версия.
services.msc или свойства процесса ragent.exe в диспетчере задач — номер версии в пути и в поле «Версия продукта».systemctl status 'srv1cv8-*' — путь к ragent содержит версию.rac нужной версии: успешное подключение к агенту подтверждает версию сервера; неверная версия даст ошибку несоответствия.Несоответствие версии клиента и сервера покажет номер версии сервера.Частые вопросы
Чем версия сервера отличается от версии клиента?
ragent/rmngr/rphost, на рабочем месте — клиентское приложение. Для стабильной работы их версии должны быть совместимы, поэтому при обновлении платформу обновляют и на сервере, и на клиентах.Почему в «Программах и компонентах» несколько версий 1С?
Можно ли узнать версию сервера, не останавливая его?
Версия платформы и режим совместимости конфигурации — это одно и то же?
8.3.24.1548). Режим совместимости — свойство конфигурации, которое ограничивает доступный функционал ради работы на старых платформах. Их значения не связаны.Как проверить версию сервера удалённо, без доступа к его рабочему столу?
rac нужной версии, подключившись к агенту на порту 1540. Если и этого доступа нет — через ошибку несоответствия версий при подключении клиента другой версии.