Каталог srvinfo и реестр кластера: как найти файлы сервера 1С на Windows и Linux
Содержание
Настройки кластера серверов 1С 8.3 хранятся в файлах каталога srvinfo. Главный из них — 1CV8Clst.lst в подпапке reg_1541: в нём список информационных баз, администраторы кластера, рабочие серверы и параметры самого кластера. На Windows по умолчанию это C:\Program Files\1cv8\srvinfo, на Linux — /home/usr1cv8/.1cv8/1C/1cv8.
Путь по умолчанию меняют часто: при установке, при переносе на другой диск, при запуске нескольких агентов на одной машине. Поэтому надёжнее не гадать, а посмотреть параметр -d в командной строке агента сервера. Как это сделать за минуту, что лежит внутри каталога и как его безопасно перенести — по порядку.
Как устроено хранение данных кластера серверов 1С
У сервера 1С нет отдельной базы для собственных настроек. Всё, что вы видите в консоли администрирования, — это содержимое нескольких текстовых файлов-списков, которые ведут процессы ragent (агент) и rmngr (менеджер кластера).
Связь такая:
- 🖥️ Агент сервера (
ragent, порт 1540 по умолчанию) знает, какие кластеры зарегистрированы на этой машине. Список кластеров он хранит в корнеsrvinfo. - 🗂️ Менеджер кластера (
rmngr, порт 1541) хранит реестр конкретного кластера: базы, рабочие серверы, требования назначения функциональности, администраторов, профили безопасности. - ⚙️ Рабочие процессы (
rphost) складывают в тот же каталог служебные данные баз: журнал регистрации, индекс полнотекстового поиска, кэши сеансов.
Сами данные информационных баз (документы, справочники, проводки) в srvinfo не хранятся — они в СУБД: MS SQL Server, PostgreSQL и других. В реестре кластера лежит только описание базы: имя, адрес сервера СУБД, имя базы в СУБД, пользователь для подключения.
Если клиент при подключении получает список баз, это работает цепочка «агент → менеджер кластера → реестр». Клиент сначала стучится к агенту на 1540, затем к менеджеру на 1541, потом к рабочему процессу из диапазона портов, заданного в свойствах рабочего сервера.
Путь к srvinfo в Windows: где искать и как проверить
Стандартные варианты расположения каталога:
| Ситуация | Типичный путь |
|---|---|
| Установка 8.3 с параметрами по умолчанию | C:\Program Files\1cv8\srvinfo |
| 32-разрядный сервер на 64-разрядной Windows | C:\Program Files (x86)\1cv8\srvinfo |
| Каталог вынесен администратором | любой путь, например D:\1C\srvinfo |
Таблица — только подсказка. Точный ответ даёт служба агента.
Способ 1. Через оснастку «Службы»
- Нажмите
Win + R, введитеservices.msc. - Найдите службу агента сервера 1С. Её имя начинается с
1C:Enterprise 8.3 Server Agent, в конце может стоять разрядность или номер версии. - Откройте её свойства двойным щелчком.
- Посмотрите поле «Исполняемый файл». Там будет строка примерно такого вида:
"C:\Program Files\1cv8\8.3.24.1548\bin\ragent.exe" -srvc -agent -regport 1541 -port 1540 -range 1560:1591 -d "C:\Program Files\1cv8\srvinfo" -debug
Значение после -d — и есть каталог с настройками кластера. Попутно видно порт агента (-port), порт менеджера кластера (-regport) и диапазон портов (-range).
Способ 2. Из командной строки
Если служб несколько или нужно проверить удалённо, используйте sc:
sc query state= all | findstr /i "1C:Enterprise"
sc qc "1C:Enterprise 8.3 Server Agent (x86-64)"
Первая команда покажет точное имя службы, вторая — её параметры, включая строку BINARY_PATH_NAME с ключом -d. Имя службы подставьте своё из вывода первой команды.
Способ 3. Через запущенный процесс
В «Диспетчере задач» на вкладке «Подробности» включите столбец «Командная строка». У процесса ragent.exe в нём будет та же строка с -d. Удобно, когда агент запущен не службой, а вручную как приложение.
Что лежит в каталоге srvinfo
Структура одинакова на Windows и Linux. Пример для кластера на стандартном порту:
srvinfo\
├── 1cv8wsrv.lst ← список кластеров, зарегистрированных в агенте
└── reg_1541\ ← каталог кластера (1541 — порт менеджера)
├── 1CV8Clst.lst ← реестр кластера
├── snccntx<GUID>\ ← кэш сеансовых данных
└── <GUID базы>\ ← служебные данные одной информационной базы
├── 1Cv8Log\ ← журнал регистрации
└── 1Cv8FTxt\ ← индекс полнотекстового поиска
Разберём, за что отвечает каждый элемент.
1cv8wsrv.lst. Файл агента. В нём перечислены кластеры этой машины и их порты. Если на сервере два кластера, например на 1541 и 2541, оба будут здесь.
reg_1541. Каталог одного кластера. Число в имени совпадает с портом менеджера кластера. Запустили второй кластер на порту 2541 — появится reg_2541.
1CV8Clst.lst. Ключевой файл. В нём:
- 📋 список информационных баз с параметрами подключения к СУБД;
- 👤 администраторы кластера (пароли хранятся не в открытом виде);
- 🖥️ рабочие серверы и их свойства;
- 🔒 профили безопасности;
- ⏱️ параметры кластера: интервал перезапуска процессов, допустимый объём памяти, уровень отказоустойчивости.
В версии 8.2 реестр кластера назывался 1CV8Reg.lst. Если вы видите этот файл, а не 1CV8Clst.lst, — перед вами каталог от старой платформы.
snccntx<GUID>. Кэш сеансовых данных. Его чистят, когда сеансы ведут себя странно после обновления или сбоя. Резервное копирование
ему не нужно.
Папки с GUID баз. Для каждой базы кластера создаётся отдельная папка, имя которой — её внутренний идентификатор. Внутри — журнал регистрации 1Cv8Log и полнотекстовый индекс 1Cv8FTxt. Сопоставить GUID с названием базы помогает команда rac infobase summary list: она выводит идентификатор каждой базы рядом с её именем.
Редактировать 1CV8Clst.lst вручную нельзя. Формат служебный, одна лишняя скобка — и кластер не стартует. Все изменения делайте через консоль администрирования или утилиту rac.
Хранение настроек кластера в Linux
На Linux логика та же, меняются пути и способ запуска. Сервер работает от пользователя usr1cv8, а каталог данных по умолчанию лежит в его домашней папке:
/home/usr1cv8/.1cv8/1C/1cv8/
├── 1cv8wsrv.lst
└── reg_1541/
└── 1CV8Clst.lst
Чтобы узнать фактический путь, посмотрите командную строку процесса агента:
ps aux | grep ragent
В выводе ищите ключ -d — после него указан каталог данных.
Где задаётся этот путь, зависит от способа установки:
| Способ запуска | Где задан каталог данных |
|---|---|
Старый init-скрипт srv1cv83 | переменная SRV1CV8_DATA в /etc/sysconfig/srv1cv83 (RHEL-семейство) или /etc/default/srv1cv83 (Debian, Ubuntu) |
| Юнит systemd новых версий платформы | параметры запуска ragent в юните службы; проверить командой systemctl cat с именем вашей службы |
| Ручной запуск | ключ -d в вашей команде или скрипте |
Права на каталог должны принадлежать пользователю usr1cv8. После копирования из-под root это частая причина того, что служба не поднимается:
chown -R usr1cv8:grp1cv8 /home/usr1cv8/.1cv8
Имя группы проверьте командой id usr1cv8 — в некоторых установках она другая.
А что с macOS
Сервер 1С:Предприятия под macOS не выпускается, поэтому кластера и каталога srvinfo там нет. На Mac работает только клиент. Его настройки — список баз ibases.v8i и параметры запуска — лежат в домашней папке пользователя, в ~/.1cv8/1C/1cestart/. К настройкам кластера они отношения не имеют.
Что хранится в реестре Windows, а что нет
Частое заблуждение: настройки кластера 1С лежат в реестре Windows. Это не так. В реестре хранится только описание службы агента — как её запускать.
Ветка службы:
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\<имя службы агента 1С>
Полезные параметры в ней:
- 🔧
ImagePath— та же командная строкаragent.exeс ключами-port,-regport,-range,-d; - 👤
ObjectName— учётная запись, от которой работает служба (по умолчаниюUSR1CV8); - ▶️
Start— тип запуска (автоматически, вручную, отключена).
Отсюда практический приём: чтобы перенести srvinfo на другой диск, достаточно изменить путь после -d в ImagePath и скопировать каталог. Делать это нужно при остановленной службе.
Правка ImagePath и остановка службы агента обрывают все сеансы пользователей на этом сервере. Планируйте работу на нерабочее время и предупредите пользователей заранее.
Список баз, который пользователь видит в окне запуска, тоже не в реестре и не в srvinfo. Он хранится в профиле пользователя: %APPDATA%\1C\1CEStart\ibases.v8i. Удаление базы из этого списка не трогает кластер, а удаление базы из кластера не убирает её из списков у пользователей.
Ещё один каталог, который путают с srvinfo, — conf в папке установки платформы. Там лежат файлы конфигурации платформы, например logcfg.xml с настройками технологического журнала. Это параметры диагностики, а не реестр кластера.
Перенос и восстановление настроек кластера
Перенос srvinfo позволяет не регистрировать заново десятки баз и не настраивать администраторов. Но работает он не всегда.
Порядок переноса на новый сервер
- Сделайте копию всего каталога
srvinfoна старом сервере при остановленной службе. - Установите на новом сервере ту же версию платформы.
- Остановите службу агента на новом сервере.
- Скопируйте
1cv8wsrv.lstи каталогreg_1541с файлом1CV8Clst.lst. Папкиsnccntx*можно не переносить — кэш построится заново. - Если нужны журналы регистрации, перенесите и папки с GUID баз.
- Запустите службу, откройте консоль и убедитесь, что базы на месте и подключаются к СУБД.
Резервная копия реестра кластера
Файл 1CV8Clst.lst весит килобайты, а восстанавливать его содержимое руками — часы работы. Держите его копию:
- 📅 после каждого изменения в кластере — добавили базу, сменили администратора, поменяли профиль безопасности;
- 🔁 по расписанию, вместе с остальным резервным копированием сервера.
Пример простого скрипта для планировщика Windows:
@echo off
set SRC=C:\Program Files\1cv8\srvinfo\reg_1541\1CV8Clst.lst
set DST=D:\Backup\1c-cluster
if not exist "%DST%" mkdir "%DST%"
copy /Y "%SRC%" "%DST%\1CV8Clst_%date:~-4%%date:~3,2%%date:~0,2%.lst"
Формат даты в %date% зависит от региональных настроек. Проверьте имя созданного файла после первого запуска.
Если реестр повреждён или потерян пароль администратора
Когда кластер не стартует после сбоя диска или в консоли больше нельзя войти из-за забытого пароля администратора кластера:
- Остановите службу агента в нерабочее время.
- Сохраните текущий
1CV8Clst.lstпод другим именем — он пригодится, если что-то пойдёт не так. - Восстановите файл из последней резервной копии.
- Запустите службу и проверьте список баз в консоли.
Нет резервной копии — обратитесь к администратору, который настраивал сервер: у него могут быть учётные данные или своя копия. Удалять реестр «чтобы создался заново» нельзя: вместе с ним пропадут регистрации всех баз, и восстанавливать их придётся по одной.
Как посмотреть настройки кластера без доступа к файлам
Файлы нужны для переноса и восстановления. Для просмотра параметров удобнее штатные средства.
Консоль администрирования серверов 1С. Подключитесь к центральному серверу, откройте свойства кластера — увидите его параметры. В ветке «Рабочие серверы» — свойства каждого сервера, включая диапазон портов. В ветке «Информационные базы» — зарегистрированные базы и параметры их подключения к СУБД.
Утилита rac. Работает через сервер администрирования ras. Сначала запустите ras на сервере кластера, затем выполните:
rac cluster list
Команда вернёт идентификаторы и параметры кластеров. Остальные подкоманды для баз, серверов и сеансов смотрите в справке rac help.