Ситуация, когда служба 1C:Enterprise 8.3 Server Agent (ragent) прекращает работу через несколько секунд после старта, является распространенной проблемой при развертывании серверной части платформы. При этом стандартные логи Windows часто остаются пустыми, а ручной запуск исполняемого файла ragent.exe не дает информативных сообщений, кроме констатации факта остановки. Разберем пошагово, как диагностировать и устранить эту неисправность.
Если служба останавливается без видимых причин, первым делом нам необходимо настроить технологический журнал (ТЖ), чтобы получить подробные сведения о сбое. Проанализируем запись в логах, которая характерна для данной проблемы:
35:02.970000-0,EXCP,0,process=ragent,Exception=81029657-3fe6-4cd6-80c0-36de78fe6657,
Descr='src\RHostImpl.cpp(2385): 81029657-3fe6-4cd6-80c0-36de78fe6657:
Ошибка сетевого доступа к серверу (дескриптор/порт/адрес)'
Код исключения 81029657-3fe6-4cd6-80c0-36de78fe6657 однозначно указывает на ошибку сетевого доступа. Это означает, что агент сервера 1С не может открыть или «прослушать» назначенные ему порты (по умолчанию это порт 1540 для агента, 1541 для менеджера кластера и диапазон 1560-1591 для рабочих процессов).
Выясним, какая программа блокирует работу 1С. Для этого воспользуемся командной строкой. Нам нужно проверить состояние порта 1540. Выполним команду:
netstat -aon | findstr :1540
Если мы видим состояние LISTENING при остановленной службе 1С, значит, порт занят другим процессом. Рассмотрим ситуацию, когда порт захвачен системными службами, такими как spoolsv.exe (Диспетчер печати) или svchost.exe. Это часто происходит из-за того, что Windows назначает динамические порты из того же диапазона, который использует 1С.
Если порт 1540 занят критически важной системной службой, самым быстрым решением будет перенос сервера 1С на другие порты. Выполним следующие действия:
regedit).ImagePath. Он содержит строку запуска службы.
"C:\Program Files\1cv8\8.3.x.xxxx\bin\ragent.exe" -srvc -agent -regport 2541 -port 2540 -range 2560:2591 -d "C:\Program Files\1cv8\srvinfo"
Важно: При изменении портов не забудьте указать новые значения в консоли администрирования серверов 1С и в настройках подключения баз у пользователей (например, ServerName:2540).
Чтобы операционная система в будущем не занимала порты 1С (1540, 1541 и др.), мы можем принудительно задать диапазон динамических портов. Проанализируем настройки через команду netsh. Запустим командную строку от имени администратора и выполним:
netsh int ipv4 set dynamicport tcp start=49152 num=16384
Эта команда устанавливает начало диапазона динамических портов на 49152, что исключает их пересечение со стандартными портами 1С.
Если порты свободны, но служба всё равно не стартует, проблема может заключаться в повреждении конфигурационных файлов кластера. Рассмотрим процесс «жесткой» очистки:
C:\Program Files\1cv8\srvinfo.1CV8Reg.lst.При работе на Windows 10 x64 с 32-битным сервером 1С стоит обратить внимание на следующие настройки:
ragent.exe, rmngr.exe и rphost.exe в список исключений системы предотвращения выполнения данных (DEP).[::], попробуйте временно отключить IPv6 в свойствах сетевого адаптера.USR1CV8), имеет полные права на папку с данными сервера (srvinfo) и на каталог установки платформы.Проанализировав вышеперечисленные факторы и последовательно проверив занятость портов, мы сможем гарантированно восстановить работу сервера 1С:Предприятие.