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

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

Установка сервера 1С как службы Windows: пошаговая инструкция

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

Установка сервера 1С:Предприятие как службы Windows — стандартный способ обеспечить постоянную работу кластера серверов без входа пользователя в систему. В режиме службы агент сервера 1С (ragent.exe) запускается автоматически при старте операционной системы, работает в фоне и не зависит от того, залогинен ли кто-то на машине. Это обязательное условие для промышленной эксплуатации клиент-серверного варианта 1С.

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

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

Когда сервер 1С должен работать как служба

Агент сервера 1С можно запустить и как обычное приложение (ragent.exe без параметра -srvc), но это подходит только для отладки. Приложение живёт, пока открыта сессия пользователя: при выходе из системы, перезагрузке сервера или автоматическом обновлении Windows кластер останавливается, и все пользователи теряют соединение с базами.

Служба решает эти проблемы: стартует до входа пользователя, перезапускается после сбоя по настройкам восстановления, управляется стандартными средствами Windows (services.msc, sc, PowerShell) и ведёт журнал событий. Для любого сервера, где работают реальные пользователи, режим службы — единственно правильный вариант.

Установка службы через мастер установки платформы

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

По умолчанию служба называется «Агент сервера 1С:Предприятия» с указанием версии платформы и порта, например «1C:Enterprise 8.3 Server Agent (x86-64) 1541». Мастер создаёт каталог кластера srvinfo в каталоге установки и прописывает стандартные порты: 1541 — порт агента, 1540 — порт менеджера кластера, диапазон 1560–1591 — порты рабочих процессов.

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

Ручная регистрация службы через командную строку

Для ручной регистрации используется системная утилита sc. Командную строку нужно запустить от имени администратора, иначе команда вернёт ошибку доступа. Базовый синтаксис выглядит так:

sc create "1C:Enterprise 8.3 Server Agent (x86-64)" binPath= "\"C:\Program Files\1cv8\8.3.22.1750\bin\ragent.exe\" -srvc -agent -regport 1541 -portrange 1560:1591 -d \"C:\Program Files\1cv8\srvinfo\"" start= auto obj= ".\USR1CV8" password= "ПарольУчетнойЗаписи"

Разберём ключевые элементы команды. Параметр binPath содержит полную строку запуска: путь к ragent.exe и его параметры. Флаг -srvc указывает, что агент запускается как служба, -agent — что это именно агент кластера, а не рабочий процесс. Параметр -d задаёт каталог кластера, где хранятся реестр информационных баз, журналы и служебные файлы. Параметры obj и password определяют учётную запись службы; если их не указать, служба будет работать от LocalSystem.

Обратите внимание на пробелы: в синтаксисе sc после «binPath=», «start=», «obj=» обязательно стоит пробел перед значением — это частая причина ошибки «неверный синтаксис». Внутренние кавычки в путях экранируются обратным слэшем.

Порядок ручной регистрации службы
  1. 1
    Создайте учётную запись для службы (например, USR1CV8) и задайте ей пароль без срока действия
  2. 2
    Предоставьте учётной записи полные права на каталог кластера srvinfo и каталог установки платформы
  3. 3
    Откройте командную строку от имени администратора
  4. 4
    Выполните команду sc create с параметрами binPath, start= auto, obj и password
  5. 5
    Запустите службу командой sc start или через services.msc
  6. 6
    Проверьте кластер в консоли администрирования серверов 1С

Параметры запуска ragent и их значение

Строку запуска службы можно корректировать под задачи. Основные параметры ragent.exe, которые допустимо менять: -regport (порт агента, по умолчанию 1541), -portrange (диапазон портов рабочих процессов, по умолчанию 1560:1591), -d (каталог кластера), -debug (режим отладки, только для тестовых стендов).

Изменение портов нужно в двух ситуациях: когда на одном сервере работают два кластера одновременно (например, продуктивный и тестовый) и когда порты по умолчанию заняты другим ПО. Второй кластер регистрируют со смещёнными портами: -regport 2541, -portrange 2560:2591 и отдельным каталогом -d.

Каталог кластера рекомендуется выносить из каталога установки платформы на отдельный диск или хотя бы отдельную папку. Тогда при обновлении или переустановке платформы реестр информационных баз и журналы кластера не пострадают, а резервное копирование srvinfo можно настроить независимо.

cmd
sc create "1C:Enterprise Server Agent 2541" binPath= "\"C:\Program Files\1cv8\8.3.22.1750\bin\ragent.exe\" -srvc -agent -regport 2541 -portrange 2560:2591 -d \"D:\1cv8\srvinfo_test\"" start= auto

Настройка учётной записи службы

Выбор учётной записи влияет на безопасность и доступность ресурсов. Вариант LocalSystem прост в настройке, но даёт службе избыточные права на сервере и не имеет сетевых привилегий под собственной учётной записью — это создаёт проблемы при обращении к сетевым ресурсам и при аутентификации на SQL Server через Windows-авторизацию.

Практичный вариант — выделенная локальная или доменная учётная запись (условно USR1CV8). Ей нужно: право «Вход в качестве службы» (назначается автоматически при регистрации через sc или мастер), полные права на каталог кластера и каталог установки, а при Windows-аутентификации на SQL Server — соответствующие права на сервере баз данных. Пароль учётной записи должен быть без срока действия, иначе после истечения пароля служба перестанет запускаться.

Если пароль учётной записи меняется по политике безопасности, его нужно синхронно обновить в свойствах службы (services.msc → свойства службы → вкладка «Вход в систему»), иначе при следующем перезапуске служба не стартует с ошибкой входа.

Проверка работы службы и кластера

После регистрации и запуска проверьте три уровня. Первый — сама служба: в services.msc статус должен быть «Выполняется», тип запуска — «Автоматически». Второй — процессы: в диспетчере задач должны присутствовать ragent.exe, а после подключения клиентов — rmngr.exe и один или несколько rphost.exe. Третий — функциональность: откройте консоль администрирования серверов 1С, добавьте сервер по имени и порту 1541 и убедитесь, что кластер отображается и список информационных баз доступен.

Дополнительно проверьте, что порты слушаются: команда netstat -ano с фильтром по 1541 должна показать состояние LISTENING. Если служба запущена, а порт не слушается, смотрите журнал событий Windows (раздел «Приложение») — агент пишет туда причины ошибок запуска.

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

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

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

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

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

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

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

Прослушивание порта 1541 (netstat -ano)
Норма

Порт в состоянии LISTENING от имени процесса ragent

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

Порта нет в списке или его занимает другой процесс

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

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

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

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

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

Самая частая проблема — служба не стартует с ошибкой входа (event 7000/7009 в журнале). Причины: неверный пароль в свойствах службы, истёкший пароль учётной записи, отсутствие права «Вход в качестве службы». Лечится обновлением пароля в свойствах службы и проверкой локальных политик безопасности.

Вторая группа ошибок — конфликт портов. Если на сервере осталась служба от старой версии платформы с теми же портами 1540–1591, новая служба запустится, но кластер будет недоступен или два кластера будут конфликтовать. Решение: удалить неиспользуемые службы командой sc delete "имя службы" (имя смотрите в свойствах службы) и перезапустить актуальную.

Третья типичная ситуация — служба запускается, но кластер пустой, базы «пропали». Обычно это означает, что служба запущена с другим каталогом -d, чем раньше, и создала новый пустой реестр. Проверьте путь в binPath службы (команда sc qc "имя службы") и при необходимости исправьте его через реестр: параметр ImagePath в ветке HKLM\SYSTEM\CurrentControlSet\Services\<имя службы>.

Типичные ошибки
01
Пропуск пробелов после binPath= и start= в команде sc — команда возвращает ошибку синтаксиса
02
Оставление служб от старых версий платформы — конфликт портов и недоступность кластера
03
Учётная запись с истекающим паролем — служба перестаёт запускаться после смены пароля
04
Каталог кластера внутри каталога установки — риск потери реестра баз при переустановке платформы
05
Регистрация службы без прав администратора — ошибка доступа, служба не создаётся

FAQ

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

Да. Каждому кластеру нужна отдельная служба с уникальными портами (например, -regport 2541, -portrange 2560:2591) и отдельным каталогом -d. Имена служб также должны различаться.

Как удалить службу сервера 1С?

Остановите службу, затем выполните в командной строке от имени администратора: sc delete "точное имя службы". Имя смотрите в свойствах службы. Каталог srvinfo при этом не удаляется — его можно сохранить для восстановления реестра баз.

Чем отличается запуск ragent как приложения от службы?

Приложение работает только внутри пользовательской сессии и останавливается при выходе из системы. Служба стартует при загрузке Windows до входа пользователя и поддерживает автоматический перезапуск после сбоя. Для продуктивной работы используется только служба.

Нужна ли перезагрузка сервера после регистрации службы?

Нет, служба становится доступна сразу после создания и может быть запущена командой sc start. Перезагрузка нужна только чтобы проверить, что служба корректно стартует автоматически.

Служба запускается и сразу останавливается — что смотреть?

Проверьте журнал событий Windows (раздел «Приложение»): там агент пишет причину. Чаще всего это занятый порт 1541, недоступный каталог -d из-за прав доступа или повреждённый реестр кластера в srvinfo.

Можно ли изменить параметры службы без её пересоздания?

Да. Строка запуска хранится в реестре: HKLM\SYSTEM\CurrentControlSet\Services\<имя службы>, параметр ImagePath. Отредактируйте его и перезапустите службу. Изменения вступят в силу после перезапуска.

Итог

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

Служба сервера 1С регистрируется мастером установки или командой sc create с параметрами -srvc -agent, портами и каталогом кластера. Используйте выделенную учётную запись с неистекающим паролем, выносите каталог srvinfo из каталога установки и удаляйте службы старых версий. Результат проверяется статусом службы, прослушиванием порта 1541 и подключением через консоль администрирования.