К статье
Практический материал

Администрирование · 11 мин

Как установить сервер 1С:Предприятия как службу Windows

Как установить сервер 1С:Предприятие как службу Windows: команда ragent, утилита sc, параметры запуска, проверка работы и устранение типичных ошибок при регистрации агента.

Агент сервера 1С:Предприятия может работать двумя способами: как консольное приложение, запускаемое вручную, и как служба Windows, стартующая автоматически вместе с операционной системой. Для рабочей среды подходит только второй вариант: служба не зависит от входа пользователя в систему, переживает перезагрузки и управляется стандартными средствами Windows — оснасткой services.msc, командами sc и net.

При типовой установке платформы на Windows инсталлятор предлагает зарегистрировать агент сервера как службу автоматически. Однако на практике этого флажка часто нет: платформа ставилась в режиме «только компоненты доступа», службу удалили при перенастройке, или сервер разворачивается на машине, где установка выполнялась скриптом. В этих случаях агент регистрируется вручную — исполняемым файлом ragent.exe с ключом -instsrvc.

Ниже разобран полный цикл: подготовка учётной записи, регистрация службы, настройка параметров, проверка результата и типичные ошибки. Инструкция применима к платформам 8.3 на Windows Server и десктопных версиях Windows.

Что нужно подготовить перед регистрацией службы

Агент сервера 1С должен работать под учётной записью, у которой есть право чтения каталога платформы, создания и изменения файлов в служебном каталоге srvinfo (там хранится реестр кластера и список информационных баз), а также сетевого доступа к серверу СУБД, если базы размещены на SQL Server, PostgreSQL или Oracle. Рекомендуется завести отдельную служебную учётную запись, например USR1CV8 — именно такую создаёт установщик по умолчанию.

Учётной записи необходимо право «Вход в качестве службы» (Log on as a service). При регистрации через ragent -instsrvc это право назначается автоматически, но если служба потом не стартует с ошибкой доступа, проверьте локальную политику безопасности: secpol.msc → Локальные политики → Назначение прав пользователя → Вход в качестве службы.

Также заранее уточните точную версию платформы и путь к каталогу bin — при обновлениях платформы каталог меняется (например, C:\Program Files\1cv8\8.3.22.1750\bin), и службу после смены версии нужно перерегистрировать с новым путём. Если на сервере установлено несколько версий платформы, убедитесь, что регистрируете именно ту, под которой планируется работа.

Регистрация службы командой ragent -instsrvc

Основной способ — утилита ragent.exe из каталога bin установленной платформы. Откройте командную строку от имени администратора, перейдите в каталог bin и выполните команду регистрации с указанием учётной записи и пароля:

cmd
cd "C:\Program Files\1cv8\8.3.22.1750\bin"
ragent.exe -instsrvc -usr .\USR1CV8 -pwd P@ssw0rd -port 1540 -regport 1541 -range 1560:1591 -d "C:\Program Files\1cv8\srvinfo"

Ключи команды: -instsrvc — регистрация службы; -usr и -pwd — учётная запись и её пароль; -port — порт агента (по умолчанию 1540); -regport — порт реестра кластера (по умолчанию 1541); -range — диапазон портов рабочих процессов (по умолчанию 1560:1591); -d — путь к каталогу srvinfo. Если параметры не указывать, будут использованы значения по умолчанию, что в большинстве случаев приемлемо.

После успешного выполнения в списке служб появится «Агент сервера 1С:Предприятия 8.3» (Agent 1C:Enterprise Server). Запустите её командой net start или через services.msc. Тип запуска у службы устанавливается «Автоматически», поэтому после перезагрузки сервера кластер поднимется сам.

Порядок действий
  1. 1
    Создайте служебную учётную запись (например, USR1CV8) с постоянным паролем
  2. 2
    Откройте командную строку от имени администратора
  3. 3
    Перейдите в каталог bin нужной версии платформы
  4. 4
    Выполните ragent.exe -instsrvc с параметрами -usr и -pwd
  5. 5
    Запустите службу: net start "1C:Enterprise 8.3 Server Agent" или через services.msc
  6. 6
    Проверьте, что процессы ragent, rmngr и rphost появились в диспетчере задач

Альтернативный способ: утилита sc и ручная настройка

Службу можно создать и стандартной утилитой Windows sc.exe, указав путь к ragent.exe с ключом -srvc. Этот вариант полезен, когда регистрацию нужно выполнить скриптом развёртывания или когда требуется нестандартное имя службы — например, при размещении двух кластеров разных версий на одном сервере.

cmd
sc create "1C_Server_Agent_83" binPath= "\"C:\Program Files\1cv8\8.3.22.1750\bin\ragent.exe\" -srvc -agent -regport 1541 -port 1540 -range 1560:1591 -d \"C:\Program Files\1cv8\srvinfo\"" start= auto obj= ".\USR1CV8" password= "P@ssw0rd" DisplayName= "Агент сервера 1С:Предприятия 8.3"

Обратите внимание на синтаксис sc: пробел после знака равенства обязателен (start= auto, а не start=auto), а кавычки внутри пути экранируются обратной косой чертой. Нарушение этих правил — частая причина ошибки при создании службы.

При работе двух кластеров на одном сервере каждому нужны собственные порты и собственный каталог srvinfo: например, второй кластер регистрируется с -port 2540, -regport 2541, -range 2560:2591 и отдельным каталогом данных. Пересечение портов приведёт к тому, что вторая служба не запустится.

Сравнение вариантов

ragent -instsrvc

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

sc create

Гибче: позволяет задать произвольное имя службы и удобен в скриптах автоматизации. Требует аккуратного экранирования кавычек и ручного контроля прав

Мастер установки платформы

Самый простой путь при первичной установке — флажок «Установить сервер 1С:Предприятия как службу». Не помогает, если платформа уже установлена без службы

Проверка результата после установки

Признак корректной работы — три типа процессов в диспетчере задач: ragent.exe (агент), rmngr.exe (менеджер кластера) и один или несколько rphost.exe (рабочие процессы). Процессы rphost появляются не сразу, а при первом обращении клиента к кластеру, поэтому их отсутствие сразу после старта службы — норма.

Проверьте, что порты слушаются: команда netstat -an | find "1540" должна показать состояние LISTENING для портов 1540 и 1541. Затем откройте консоль администрирования серверов 1С (1CV8 Servers.msc или через подключение кластера в консоли), зарегистрируйте центральный сервер и убедитесь, что кластер виден и в нём отображается список информационных баз.

Финальная проверка — подключение клиента: создайте в списке баз клиентское подключение с указанием сервера и имени базы в кластере и запустите 1С:Предприятие. Если клиент подключается и работает, установка службы завершена успешно.

Контрольные точки

Как проверить результат

Служба в services.msc
Норма

Состояние «Выполняется», тип запуска «Автоматически»

Тревожный признак

Служба останавливается сразу после запуска или отсутствует в списке

Процессы в диспетчере задач
Норма

ragent.exe и rmngr.exe работают от имени служебной учётной записи

Тревожный признак

Процессы отсутствуют или запущены от имени другого пользователя

Порты 1540 и 1541
Норма

netstat показывает LISTENING

Тревожный признак

Порты не слушаются или заняты другим приложением

Консоль администрирования
Норма

Кластер виден, список баз открывается без ошибок

Тревожный признак

Ошибка подключения к агенту сервера

Типичные ошибки и как их исправить

Наиболее частая проблема — служба не стартует с ошибкой «отказано в доступе» или ошибкой входа. Причины: неверный пароль учётной записи, истёкший пароль, отсутствие права «Вход в качестве службы» или блокировка записи групповой политикой. Проверьте пароль, назначьте право через secpol.msc и перезапустите службу.

Вторая типичная ситуация — после обновления платформы кластер «пропал»: служба ссылается на старый каталог bin, который был удалён при обновлении. Решение — удалить службу (ragent -rmsrvc или sc delete) и зарегистрировать заново из каталога новой версии. Каталог srvinfo при этом не трогайте: реестр кластера и список баз сохранятся.

Третья группа ошибок связана с каталогом srvinfo: если служба стартует, но кластер пуст или в журнале ошибки доступа к файлам, проверьте, что у служебной учётной записи есть полные права на этот каталог, и что в команде запуска указан правильный путь -d. Также убедитесь, что брандмауэр Windows не блокирует порты 1540–1541 и диапазон рабочих процессов, если клиенты подключаются по сети.

Типичные ошибки
01
Регистрация службы из каталога старой версии платформы — после обновления служба перестаёт запускаться, приходится перерегистрировать
02
Использование учётной записи пользователя с истекающим паролем — через некоторое время служба останавливается, и весь кластер становится недоступен
03
Отсутствие прав на каталог srvinfo — кластер стартует пустым или с ошибками в журнале, базы «исчезают»
04
Пересечение портов при установке второго кластера — вторая служба не запускается без явной ошибки в оснастке
05
Блокировка портов брандмауэром — служба работает локально, но клиенты по сети подключиться не могут

Удаление и перерегистрация службы

Чтобы удалить службу агента, остановите её и выполните ragent.exe -rmsrvc из того же каталога bin, либо sc delete с именем службы. Удаление службы не затрагивает каталог srvinfo и сами базы данных — остаётся только зарегистрировать службу заново с нужными параметрами.

Перерегистрация требуется при смене версии платформы, переносе каталога srvinfo, смене портов или смене учётной записи. Порядок безопасный: остановить службу → удалить → зарегистрировать с новыми параметрами → запустить → проверить доступность кластера. Перед любыми манипуляциями на продуктивном сервере убедитесь, что есть актуальные резервные копии баз, и выполняйте работы вне рабочего времени пользователей.

Итог

Что важно запомнить

Служба агента сервера 1С регистрируется командой ragent -instsrvc с указанием служебной учётной записи. После обновления платформы службу нужно перерегистрировать из нового каталога bin. Признак успеха — работающие процессы ragent и rmngr, прослушиваемые порты 1540/1541 и доступный кластер в консоли администрирования.

Частые вопросы

Можно ли запустить сервер 1С без службы, просто как программу?

Да, ragent.exe можно запустить как консольное приложение без ключей службы — это удобно для тестов и отладки. Но такой экземпляр работает только пока открыта сессия пользователя, и для продуктивной среды этот способ не подходит.

Служба зарегистрирована, но не запускается с ошибкой 1069. Что делать?

Ошибка 1069 означает сбой входа из-за неверных учётных данных. Откройте свойства службы, вкладку «Вход в систему», заново введите пароль служебной учётной записи и проверьте, что запись не заблокирована и пароль не истёк.

Как узнать, из какого каталога зарегистрирована служба?

Откройте свойства службы в services.msc — поле «Исполняемый файл» покажет полный путь к ragent.exe и все параметры запуска. Либо выполните команду sc qc с именем службы в командной строке.

Нужно ли открывать порты в брандмауэре вручную?

Если клиенты подключаются к серверу по сети — да. Создайте разрешающие правила для входящих подключений на порты 1540, 1541 и диапазон 1560–1591 (или ваш нестандартный диапазон рабочих процессов) по протоколу TCP.

Можно ли разместить два сервера 1С разных версий на одной машине?

Можно: зарегистрируйте для каждой версии отдельную службу с уникальным именем, непересекающимися портами (например, 1540/1541 и 2540/2541) и отдельными каталогами srvinfo. Клиенты при подключении указывают порт кластера через двоеточие после имени сервера.

Что произойдёт с базами при удалении службы?

Ничего: удаление службы убирает только регистрацию агента в Windows. Список баз хранится в каталоге srvinfo, а сами данные — в СУБД. После повторной регистрации службы с тем же каталогом srvinfo кластер вернётся в прежнее состояние.