Перезапуск сервера 1С: службой, консолью кластера и из командной строки

· 10 мин

Содержание

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

Разница существенная. Перезапуск службы выкидывает всех пользователей из всех баз кластера. Перезапуск процесса rphost затрагивает только тех, кто на нём работал. Поэтому сначала решите, что именно вам нужно, и только потом нажимайте кнопки.

Ниже — порядок действий для Windows и коротко для Linux. Везде, где есть риск потерять данные, стоит отдельная плашка.

Что проверить до перезапуска сервера

Перезапуск не лечит причину, а только сбрасывает состояние. Пять минут подготовки сэкономят час разбирательств.

  1. Узнайте, кто работает. Откройте консоль кластера, раздел «Сеансы» нужной информационной базы. Посмотрите, нет ли длинных операций: закрытие месяца , массовое проведение, обмен.
  2. Предупредите пользователей. Обычно хватает сообщения за 10–15 минут. Можно заранее запретить новые подключения: в свойствах информационной базы включается блокировка начала сеансов с текстом сообщения.
  3. Сохраните состояние. Если проблема плавающая, снимите диагностику до перезапуска: список сеансов, объём памяти процессов rphost в диспетчере задач, последние строки журнала регистрации.
  4. Сделайте копию баз, если перезапуск связан с обновлением платформы или конфигурации.
  5. Проверьте, что сервер не обслуживает сразу несколько систем. На одной машине нередко живут 1С, веб-публикации и обмены. Остановка службы заденет всё сразу.

Не перезапускайте сервер, пока идёт проведение документов или регламентное задание. Транзакция откатится, а при жёстком обрыве возможна рассинхронизация данных и блокировки в СУБД.

Если нужно просто освободить базу от «зависших» пользователей, не трогайте службу. Завершите нужные сеансы вручную: это безопаснее и быстрее.

Перед перезапуском сервера 1С
Выполнено: 0 / 5

Какой способ перезапуска выбрать

СпособКогда подходитЧто затронетРиски
Консоль кластера: завершить сеансЗавис один пользовательТолько его сеансМинимальные
Консоль кластера: сбросить рабочий процессПроцесс раздулся или тормозитПользователей на этом процессеНезавершённые операции откатятся
Перезапуск службы агентаЗависание кластера, смена настроек, обновление платформыВсе базы и все сеансы кластераОткат всех открытых транзакций
Перезагрузка ОССлужба не останавливается, проблемы с памятью или сетьюВсё, что есть на сервереСамые высокие

Идите сверху вниз по таблице. Если помог первый вариант, остальные не нужны.

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

Консоль администрирования серверов 1С — это оснастка, которая ставится вместе с платформой. Подключение к серверу идёт под администратором кластера, если он задан.

Завершить зависший сеанс

  1. Разверните: сервер, кластер, «Информационные базы», нужная база, «Сеансы».
  2. Найдите пользователя по имени или по времени последней активности.
  3. Выберите «Удалить» в контекстном меню сеанса.

Так вы закроете сеанс, не остановив ни службу, ни процессы.

Сбросить процесс rphost

В 1С процессы делятся по ролям. Агент ragent стартует вместе со службой, менеджер кластера rmngr управляет кластером, а rphost — рабочие процессы, в которых исполняется код пользователей. Именно rphost чаще всего «толстеет» и подвисает.

В консоли откройте «Рабочие процессы». Для каждого видно, сколько он занимает памяти, сколько соединений держит и как давно запущен. Процесс, где память упёрлась в потолок, а соединений мало, и есть кандидат на сброс.

Удалить рабочий процесс в этом списке нельзя, но можно сделать иначе:

  • включить автоматический перезапуск в свойствах кластера;
  • завершить сеансы на проблемном процессе и дождаться, пока он остановится сам;
  • на крайний случай завершить его в диспетчере задач по PID (см. ниже).

Включить автоматический перезапуск процессов

Откройте свойства кластера. Там есть три параметра, которые отвечают за плановое обновление процессов:

  • Интервал перезапуска в секундах. Значение 0 отключает перезапуск. Для нагруженных систем часто ставят около 3600 секунд, то есть раз в час.
  • Допустимый объём памяти процесса в байтах. Когда процесс его превысит, кластер начнёт его заменять.
  • Интервал превышения допустимого объёма — сколько секунд процесс может работать сверх лимита до принудительного завершения.

Есть и четвёртый параметр: через сколько секунд останавливать выключенные процессы. Он даёт пользователям время закончить работу до обрыва.

Автоперезапуск процессов часто решает «ночные» проблемы: утром сервер медленный, а к обеду приходит в норму. Если у вас так, начните не с перезагрузки по звонку, а с этих настроек.

Перезапуск службы агента сервера 1С в Windows

Это самый частый ответ на вопрос «как перезагрузить сервер 1С».

Через оснастку «Службы»

  1. Нажмите Win+R, введите services.msc.
  2. Найдите службу с названием вида «Агент сервера 1С:Предприятия 8.3» с пометкой разрядности. Точное имя зависит от версии платформы.
  3. Выберите «Перезапустить» или последовательно «Остановить» и «Запустить».

Служба останавливается не мгновенно. При большом числе сеансов может пройти минута-две. Не нажимайте «Остановить» повторно и не убивайте процесс сразу: сначала дайте время.

Через командную строку

Откройте cmd от имени администратора. Узнать точное имя службы можно запросом:

sc query state= all | findstr /i "1C"

Он покажет службы, в названии которых есть «1C». Имя запоминайте именно из поля SERVICE_NAME. Дальше:

net stop "ИМЯ_СЛУЖБЫ"
net start "ИМЯ_СЛУЖБЫ"

Если имя содержит пробелы, кавычки обязательны. То же в PowerShell:

Restart-Service -Name "ИМЯ_СЛУЖБЫ" -Force

Флаг -Force нужен, когда у службы есть зависимые. Его не применяйте, если не уверены, что остановите именно то, что планировали.

Автоматический перезапуск по расписанию

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

Запуск ragent вручную из командной строки

Служба — это на самом деле обёртка вокруг исполняемого файла ragent.exe. Иногда его запускают напрямую: для отладки, когда служба не стартует, или при нестандартных настройках. Файл лежит в каталоге bin установленной платформы.

Типовая команда запуска в режиме приложения:

ragent.exe -debug -d "D:\srvinfo" -port 1540 -regport 1541 -range 1560:1591

Что здесь что:

  • -d — каталог данных кластера (его ещё называют srvinfo);
  • -port — порт агента, по умолчанию 1540;
  • -regport — порт менеджера кластера, по умолчанию 1541;
  • -range — диапазон портов для рабочих процессов.

Запуск из консоли годится только для диагностики. Если окно закрыть, сервер остановится. В рабочем режиме запускайте именно службой.

Не запускайте второй ragent с теми же портами и тем же каталогом srvinfo, пока работает служба. Получите конфликт портов, а в худшем случае испорченный реестр кластера.

Управление через rac

Утилита rac из каталога bin платформы позволяет делать то же, что консоль, но скриптом. Сначала узнаёте идентификатор кластера:

rac cluster list

Затем можно посмотреть сеансы :

rac session list --cluster=ИДЕНТИФИКАТОР

И завершить нужный:

rac session terminate --cluster=ИДЕНТИФИКАТОР --session=ИДЕНТИФИКАТОР_СЕАНСА

Для работы нужен запущенный сервер администрирования (процесс ras). Полный список параметров смотрите по rac help — набор ключей зависит от версии платформы.

Если служба не останавливается: принудительное завершение

Бывает, что net stop висит, а статус службы остаётся «Остановка». Порядок действий такой.

  1. Подождите 3–5 минут. Агент дожидается, пока закроются процессы.
  2. Откройте диспетчер задач, вкладка «Подробности», найдите ragent.exe, rmngr.exe и rphost.exe.
  3. Завершите сначала rphost.exe, затем rmngr.exe, затем ragent.exe.
  4. Если нужен вариант из командной строки:
taskkill /F /IM rphost.exe
taskkill /F /IM rmngr.exe
taskkill /F /IM ragent.exe

Ключ /F означает принудительное завершение без шанса сохранить данные. После него запустите службу и проверьте статус.

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

Освободить память без перезагрузки ОС

Если на сервере несколько баз и кластеров, сначала найдите виновника. Сравните по PID: в консоли кластера у рабочего процесса видны его идентификатор и память. Завершайте только тот rphost, который выбивается. Остальные процессы продолжат работу, а пользователи проблемного процесса переподключатся автоматически при следующем действии.

Если память забита не процессами 1С, а СУБД, перезапуск службы 1С ничего не даст. Смотрите настройки памяти SQL-сервера.

Перезапуск сервера 1С на Linux

Здесь всё проще: служба управляется через systemd. Имя юнита зависит от версии платформы и способа установки, чаще всего это srv1cv83.

sudo systemctl status srv1cv83
sudo systemctl restart srv1cv83

Зависшие процессы смотрите так:

ps aux | grep -E "ragent|rmngr|rphost"

Если после остановки службы процессы остались, завершите их командой kill по PID. Ключ -9 используйте только когда обычный kill не сработал.

Что делать с зависшим сервером 1С?

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

Служба в статусе «Выполняется» — ещё не значит, что всё в порядке. Пройдите по короткому списку.

  • ✅ Кластер виден в консоли и подключается без ошибок.
  • ✅ Рабочие процессы запустились. Их количество соответствует настройкам, а память у новых процессов небольшая.
  • ✅ Базы открываются у нескольких пользователей, а не только у вас.
  • ✅ Лицензии получены. Если программные лицензии не подхватились, пользователи получат сообщение о нехватке лицензий.
  • ✅ Нет ошибок в журнале событий Windows от службы агента и в журнале регистрации 1С.

Типичные проблемы после запуска

Диагностика: выберите симптом

Как не перезапускать сервер без нужды

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

  • 🔧 Настройте плановый перезапуск процессов в кластере, а не службы целиком. Пользователи этого почти не заметят.
  • 🔧 Следите за памятью rphost. Если он растёт линейно в течение дня, ищите проблемный код, например, утечки в обработках или внешних компонентах.
  • 🔧 Держите платформу актуальной, но обновляйте на тестовой копии. Часть зависаний — известные ошибки старых релизов.
  • 🔧 Разнесите нагрузку: тяжёлые отчёты и обмены вынесите на отдельный рабочий сервер кластера или в другое время.
  • 🔧 Не оставляйте старые сеансы. В свойствах информационной базы и кластера есть таймауты на неактивные соединения.
  • 🔧 Ведите журнал перезапусков: когда, зачем, что было до и после. Через месяц это покажет закономерность.
Как часто вам приходится перезапускать сервер 1С?

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

Теряются ли данные при перезапуске сервера 1С?
Подтверждённые транзакции сохраняются. Незавершённые откатываются, поэтому документы, которые в этот момент проводились, придётся провести заново.
Сколько времени занимает перезапуск службы?
Обычно от десяти секунд до пары минут. Дольше всего служба останавливается, когда в кластере много активных сеансов.
Нужно ли перезапускать сервер после установки новой платформы?
Да. После установки или обновления платформы на сервере перезапустите службу агента, чтобы она стартовала из нового каталога. Предварительно проверьте, что служба настроена на запуск нужной версии.
Можно ли перезапустить сервер 1С без отключения пользователей?
Службу целиком нельзя: сеансы оборвутся. Но рабочие процессы можно обновлять постепенно с помощью автоматического перезапуска в свойствах кластера.
Чем отличается перезапуск службы от перезагрузки Windows?
Служба перезапускает только процессы 1С. Перезагрузка ОС затрагивает всё на сервере, включая СУБД и другие службы, и нужна, когда проблема в памяти, сети или драйверах.
Файловая база тоже требует перезапуска сервера?
Нет. Файловому варианту сервер 1С не нужен, там достаточно закрыть все сеансы.