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

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

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

Как правильно остановить службу агента сервера 1С:Предприятие в Windows и Linux: через services.msc, командную строку и консоль. Порядок действий и риски.

Остановка службы агента сервера 1С:Предприятие — штатная операция, которая требуется при обновлении платформы, изменении настроек кластера, перезапуске после сбоя или плановом обслуживании сервера. Однако выполнять её нужно осознанно: в момент остановки разрываются все активные сеансы пользователей, а незавершённые транзакции могут привести к ошибкам в базах данных.

Служба сервера 1С в Windows обычно называется «Агент сервера 1С:Предприятия» (1C:Enterprise Server Agent) с указанием версии платформы, например 8.3.22. В Linux это процесс ragent, управляемый через systemd или скрипты инициализации. Способ остановки зависит от операционной системы и от того, работаете ли вы локально на сервере или удалённо.

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

Подготовка: что сделать перед остановкой службы

Главный риск при остановке агента сервера — аварийный разрыв активных сеансов. Если пользователь в этот момент проводит документ или выполняет регламентное задание, операция прервётся, а в базе могут остаться незавершённые транзакции. Для файловых баз это чревато ошибками целостности, для клиент-серверных — блокировками на стороне СУБД.

Откройте консоль администрирования серверов 1С, перейдите в раздел «Сеансы» и оцените число активных подключений. Если сеансов много, уведомите пользователей и попросите завершить работу. Альтернатива — установить для информационных баз блокировку начала сеансов с сообщением о времени перезапуска и дождаться освобождения базы.

Также проверьте список фоновых заданий в консоли кластера. Длительные регламентные операции (обмены данными, резервное копирование средствами 1С, пересчёт итогов) лучше дождаться или принудительно завершить осознанно, понимая последствия.

Остановка службы через оснастку «Службы» в Windows

Это самый наглядный способ, подходящий тем, кто редко работает с командной строкой. Нажмите Win+R, введите services.msc и нажмите Enter. В списке служб найдите строку вида «Агент сервера 1С:Предприятия 8.3.x» — если установлено несколько версий платформы, служб будет несколько, и важно выбрать именно ту, которая обслуживает нужный кластер.

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

Через контекстное меню доступен и пункт «Перезапустить», но в ряде версий Windows он отсутствует для отдельных служб — тогда выполните последовательно «Остановить» и «Запустить». Перезапуск полезен, когда нужно применить изменения параметров кластера без длительного простоя.

Порядок действий в services.msc
  1. 1
    Откройте services.msc через Win+R
  2. 2
    Найдите «Агент сервера 1С:Предприятия» нужной версии платформы
  3. 3
    Щёлкните правой кнопкой и выберите «Остановить»
  4. 4
    Дождитесь статуса «Остановлена»
  5. 5
    Проверьте в диспетчере задач, что процесс ragent.exe завершён

Остановка через командную строку и PowerShell

Командная строка удобнее для автоматизации и удалённого выполнения. Запустите cmd от имени администратора и выполните команду остановки по имени службы. Имя службы можно посмотреть в свойствах службы в оснастке services.msc на вкладке «Общие» — оно отличается от отображаемого названия и обычно содержит номер версии платформы.

cmd
net stop "1C:Enterprise 8.3 Server Agent"

Если точное имя неизвестно, выведите список служб командой sc query state= all или найдите нужную через sc query | findstr /i "1C". Для остановки используется также конструкция sc stop "имя_службы".

В PowerShell доступны более удобные командлеты: Get-Service для поиска и Stop-Service для остановки. Пример: Stop-Service -Name "1C:Enterprise 8.3 Server Agent" -Force. Параметр -Force останавливает службу вместе с зависимыми, используйте его осознанно.

Для удалённой остановки на другом сервере в той же сети применяйте sc \\имя_сервера stop "имя_службы" или PowerShell с параметром -ComputerName. Учётная запись, из-под которой выполняется команда, должна обладать правами администратора на целевом сервере.

Остановка сервера 1С в Linux

В Linux агент сервера 1С обычно зарегистрирован как служба systemd. Команда остановки выглядит так: sudo systemctl stop srv1cv8-3-XX.service, где в имени службы зашита версия платформы. Точное имя можно уточнить командой systemctl list-units | grep 1cv8 или systemctl list-units | grep srv1c.

Проверить состояние после остановки помогает systemctl status с именем службы: статус inactive (dead) означает успешную остановку. Дополнительно убедитесь, что процессы ragent, rmngr и rphost завершены, выполнив ps aux | grep ragent.

bash
sudo systemctl stop srv1cv8-3-24.service && systemctl status srv1cv8-3-24.service

Если служба не останавливается штатно, не спешите сразу использовать kill -9: сначала попробуйте sudo systemctl stop повторно и изучите логи через journalctl -u имя_службы. Принудительное завершение процессов — крайняя мера, так как рабочие процессы rphost могут удерживать соединения с СУБД.

Что делать, если служба не останавливается

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

Если ожидание не помогло, найдите идентификатор процесса: sc queryex "имя_службы" покажет PID процесса ragent.exe. Завершить его принудительно можно командой taskkill /PID номер /F. Учтите, что это аварийное завершение: все дочерние процессы rphost и rmngr также могут быть прерваны без корректного закрытия сеансов.

В Linux аналогичная последовательность: определите PID через ps aux | grep ragent, затем используйте kill PID, и только при безрезультатности — kill -9 PID. После принудительного завершения проверьте, что не осталось «осиротевших» процессов rphost, и при необходимости завершите их тоже.

Типичные ошибки
01
Остановка службы без предупреждения пользователей — обрыв сеансов и риск незавершённых транзакций
02
Остановка не той службы при нескольких установленных версиях платформы — кластер продолжает работать, а нужные процессы остаются активными
03
Немедленный kill -9 вместо штатной остановки — потеря данных в незавершённых операциях и возможные блокировки в СУБД
04
Забытый тип запуска «Вручную» после обслуживания — после перезагрузки сервера кластер 1С не стартует автоматически

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

После остановки убедитесь, что служба действительно не работает. В Windows проверьте статус в services.msc и отсутствие процессов ragent.exe, rmngr.exe и rphost.exe в диспетчере задач. В Linux используйте systemctl status и ps aux | grep rphost.

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

Обратный запуск выполняется теми же средствами: кнопка «Запустить» в services.msc, команда net start "имя_службы" или sudo systemctl start в Linux. После запуска проверьте в консоли кластера, что информационные базы видны, рабочие процессы поднялись, а пользователи могут подключаться.

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

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

Статус службы
Норма

«Остановлена» в services.msc или inactive (dead) в systemctl

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

Статус «Остановка» долго не меняется или служба снова «Работает»

Процессы сервера
Норма

ragent, rmngr, rphost отсутствуют в списке процессов

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

Процессы rphost продолжают висеть после остановки агента

Доступность кластера
Норма

Подключение к кластеру невозможно, ошибка соединения

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

Клиенты по-прежнему подключаются и работают

Полезные уточнения и ограничения

Остановка службы агента сервера не затрагивает службу агента сервера администрирования (ras) и сервер СУБД (MS SQL, PostgreSQL) — они продолжают работать. Если обслуживание требует остановки и их, выполняйте это в правильном порядке: сначала агент 1С, затем СУБД; запуск — в обратной последовательности.

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

Для регулярных операций (ночные перезапуски, обслуживание) имеет смысл оформить остановку и запуск в виде скрипта с предварительной блокировкой сеансов через консоль кластера или утилиту rac. Это снижает риск человеческой ошибки и делает процедуру воспроизводимой.

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

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

Нет. Остановка системной службы в Windows и Linux требует прав администратора или root. Если прав нет, обратитесь к системному администратору или запросите выполнение команды через делегированные механизмы, например заранее настроенную задачу планировщика.

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

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

Чем перезапуск отличается от остановки?

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

Служба зависла в статусе «Остановка» — что делать?

Подождите несколько минут: Windows даёт службе время на завершение. Если статус не меняется, узнайте PID через sc queryex и завершите процесс командой taskkill /PID номер /F. После этого проверьте, что дочерние процессы rphost также завершены.

Нужно ли останавливать SQL Server вместе со службой 1С?

Для большинства задач — нет: остановки агента сервера 1С достаточно. СУБД останавливают только при её собственном обслуживании или обновлении. Порядок важен: сначала останавливается агент 1С, затем СУБД; запускаются в обратной последовательности.

Как остановить сервер 1С по расписанию?

Создайте скрипт с командами net stop / net start (или systemctl в Linux) и добавьте его в планировщик задач Windows или cron. Перед остановкой полезно программно завершить сеансы через утилиту rac, чтобы исключить обрыв активных операций.

Итог

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

Останавливайте службу «Агент сервера 1С:Предприятия» через services.msc, net stop или systemctl — в зависимости от ОС. Перед остановкой завершите сеансы пользователей и фоновые задания, после — проверьте отсутствие процессов ragent и rphost. Принудительное завершение через taskkill или kill применяйте только как крайнюю меру.