Как найти, где физически хранится информационная база 1С на сервере Windows и Linux

· 10 мин

Содержание

Где лежат базы 1С на сервере, зависит от режима работы. Файловая база — это папка с файлом 1Cv8.1CD, её путь виден в окне запуска под списком баз (строка File="…"). Клиент-серверная база хранится не в файлах 1С, а в СУБД (MS SQL Server или PostgreSQL), а у сервера 1С на диске лежит только реестр кластера в каталоге srvinfo.

Частая ошибка — искать базу в папке C:\Users\<пользователь>\AppData\Roaming\1C\1cv8\. Там лежат кэш и настройки пользователя, а не данные. Удалить их можно, базу этим не задеть. И наоборот: копия папки srvinfo не заменяет резервную копию серверной базы — данных в ней нет.

Из чего состоит база 1С и где хранятся данные

У платформы 1С:Предприятие 8.3 два варианта хранения. Они различаются принципиально, поэтому сначала определите свой.

РежимГде данныеЧто видно на диске сервера 1ССтрока подключения
ФайловыйФайл 1Cv8.1CD в каталоге базыПапка базы целикомFile="D:\Bases\Buh"
Клиент-серверныйБаза данных в MS SQL / PostgreSQLТолько реестр кластера srvinfoSrvr="srv1c";Ref="buh"

Содержимое каталога файловой базы

Откройте папку файловой базы — в ней обычно такие объекты:

  • 📦 1Cv8.1CD — единственный файл с данными, конфигурацией и пользователями. Именно его размер вы видите как «вес базы».
  • 📜 1Cv8Log — каталог журнала регистрации. В новых форматах это один файл 1Cv8.lgd, в старых — 1Cv8.lgf и набор файлов .lgp.
  • 🗂️ Временные файлы, которые платформа создаёт во время работы пользователей и удаляет сама.

Для переноса или копирования файловой базы достаточно скопировать 1Cv8.1CD. Журнал регистрации нужен, только если вам важна история действий пользователей.

Копируйте 1Cv8.1CD, когда в базе никто не работает. Копия, снятая во время записи, может оказаться повреждённой. Надёжнее выгрузить базу в .dt через Конфигуратор: Администрирование → Выгрузить информационную базу.

Что лежит у клиент-серверной базы

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

Пути к базам 1С на сервере Windows

Файловые базы

Платформа не задаёт фиксированного места для файловой базы. При создании новой базы мастер предлагает каталог вида C:\Users\<пользователь>\Documents\InfoBase, но администратор может выбрать любую папку. На серверах базы обычно складывают в отдельную папку на диске данных, например D:\1C_Bases\, и открывают к ней сетевой доступ.

Быстрые способы найти файловую базу на Windows-сервере:

  1. Откройте окно запуска 1С, выделите базу в списке. Внизу окна появится строка подключения File="…" — это и есть путь.
  2. Нажмите Изменить у выделенной базы: на втором шаге мастера путь к каталогу виден целиком и его можно скопировать.
  3. Если окна запуска под рукой нет, выполните поиск по диску:
dir D:\ /s /b | findstr /i "1Cv8.1CD"

В PowerShell то же самое:

Get-ChildItem -Path D:\ -Filter 1Cv8.1CD -Recurse -ErrorAction SilentlyContinue | Select-Object FullName, Length, LastWriteTime

Колонка LastWriteTime помогает отличить рабочую базу от забытых копий: у рабочей дата изменения свежая.

Каталог сервера 1С (srvinfo)

Если на Windows-сервере установлен сервер 1С:Предприятия как служба, его рабочий каталог по умолчанию — C:\Program Files\1cv8\srvinfo. Точный путь задан в параметрах службы «Агент сервера 1С:Предприятия 8.3». Откройте services.msc, свойства службы, поле «Исполняемый файл». В строке запуска ищите ключ -d:

"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 и есть каталог с реестром кластера.

Данные СУБД на Windows

У MS SQL Server файлы базы — это пара .mdf (данные) и .ldf (журнал транзакций). При установке по умолчанию они лежат в каталоге вида C:\Program Files\Microsoft SQL Server\MSSQL<версия>.MSSQLSERVER\MSSQL\DATA\. Точный путь конкретной базы показывает SQL Server Management Studio: свойства базы → страница «Файлы».

У PostgreSQL на Windows каталог данных задаётся при установке, по умолчанию это подпапка data в каталоге установки PostgreSQL.

Где искать базы 1С в Linux и что такое ibases.v8i

Список баз пользователя

Список баз, который вы видите в окне запуска, хранится в файле ibases.v8i. Это обычный текстовый файл, в нём для каждой базы есть секция с именем и строкой подключения.

ОСПуть к ibases.v8i
Windows%APPDATA%\1C\1CEStart\ibases.v8i
Linux~/.1C/1cestart/ibases.v8i

Пример содержимого:

[Бухгалтерия предприятия]
Connect=File="/srv/1c/bases/buh";
ID=3f2a1c4e-...
OrderInList=0
Folder=/

[Зарплата (сервер)]
Connect=Srvr="srv1c";Ref="zup";

Строка Connect=File= даёт путь к каталогу файловой базы, Connect=Srvr=…;Ref=… — имя сервера и имя базы в кластере.

Рядом с ibases.v8i лежит 1cestart.cfg. В нём параметр CommonInfoBases может указывать на общий файл списка баз (например, на сетевой папке). Если база есть в окне запуска, но её нет в ibases.v8i, — её подтягивает общий список. Ищите путь к нему в 1cestart.cfg пользователя или в общем %ProgramData%\1C\1CEStart\1cestart.cfg.

Каталог сервера 1С в Linux

Сервер 1С в Linux работает от пользователя usr1cv8. По умолчанию реестр кластера находится в домашнем каталоге этого пользователя:

/home/usr1cv8/.1cv8/1C/1cv8

Если каталог переносили, посмотрите параметры запуска службы. Проверить, с каким каталогом запущен агент, проще всего по процессу:

ps -ef | grep ragent

В выводе после ключа -d будет фактический путь. Бинарные файлы платформы при этом лежат отдельно, в /opt/1cv8/x86_64/<номер версии>/.

Файловые базы и PostgreSQL в Linux

Файловые базы ищите тем же поиском по имени файла:

sudo find / -name "1Cv8.1CD" -type f 2>/dev/null

Данные PostgreSQL в Debian и Ubuntu по умолчанию лежат в /var/lib/postgresql/<версия>/main. Точный каталог покажет сам сервер СУБД:

sudo -u postgres psql -c "SHOW data_directory;"

Не копируйте и не переносите файлы из каталога данных PostgreSQL при работающей СУБД. Резервную копию серверной базы делайте средствами СУБД (pg_dump) или выгрузкой .dt.

Как прочитать реестр кластера 1CV8Clst.lst

Внутри каталога srvinfo есть папка reg_1541. Число в имени — порт менеджера кластера; если кластер создан на другом порту, папка будет называться иначе. Ключевые файлы:

  • 📋 srvinfo\1cv8wsrv.lst — список кластеров на этом сервере.
  • 📋 srvinfo\reg_1541\1CV8Clst.lst — реестр кластера: информационные базы, рабочие серверы, администраторы, параметры подключения к СУБД.
  • 📁 srvinfo\reg_1541\<GUID базы>\ — папка каждой базы кластера. В ней журнал регистрации 1Cv8Log и служебные файлы.
  • 📁 srvinfo\reg_1541\snccntx… — кэш сеансовых данных. К данным базы отношения не имеет.

Как найти GUID нужной базы

1CV8Clst.lst — текстовый файл со скобочной структурой. Откройте его копию в любом редакторе и найдите по имени базы, например buh. Рядом с именем будет её идентификатор вида a1b2c3d4-…, а дальше — тип СУБД, имя сервера СУБД и имя базы данных в СУБД.

Через поиск в PowerShell:

Select-String -Path "C:\Program Files\1cv8\srvinfo\reg_1541\1CV8Clst.lst" -Pattern "buh"

Зная GUID, вы откроете папку reg_1541\<GUID>\1Cv8Log и получите журнал регистрации конкретной серверной базы.

Не редактируйте 1CV8Clst.lst вручную при работающей службе. Любая ошибка в скобках приведёт к тому, что кластер не поднимется. Все изменения кластера делайте через консоль администрирования серверов или утилиту rac.

Те же данные через консоль и rac

Безопаснее получать сведения не из файла, а из инструментов администрирования:

  1. В консоли администрирования серверов раскройте Центральные серверы 1С:Предприятия → <сервер> → Кластеры → <кластер> → Информационные базы.
  2. Откройте свойства базы. В них видны «Сервер баз данных», «Тип СУБД» и «База данных» — то есть где именно в СУБД лежат таблицы.

Из командной строки (нужен запущенный сервер администрирования ras):

rac cluster list
rac infobase summary list --cluster=<id кластера>

Первая команда выдаёт идентификатор кластера, вторая — список баз с их GUID и именами. Остальные параметры смотрите в справке rac help infobase.

Файловый или клиент-серверный режим: как понять, с чем вы имеете дело

Когда база уже открыта, режим определяется за минуту:

  1. В открытой базе откройте главное меню (кнопка с тремя полосками в заголовке окна) и выберите Справка → О программе. В строке информационной базы будет File="…" или Srvr="…";Ref="…".
  2. В окне запуска выделите базу и посмотрите строку подключения внизу окна.
  3. Программно — функцией СтрокаСоединенияИнформационнойБазы(), например в обработке или через «Вычислить выражение» в отладчике.

Что меняется на практике:

ЗадачаФайловая базаКлиент-серверная база
Сделать копиюКопировать 1Cv8.1CD или выгрузить .dtБэкап средствами СУБД или выгрузка .dt
Найти журнал регистрацииПапка базы → 1Cv8Logsrvinfo\reg_1541\<GUID>\1Cv8Log
Узнать размерРазмер 1Cv8.1CDРазмер базы в СУБД
Права доступаНа папку базы для каждого пользователяТолько для служебной учётной записи сервера 1С
Что вы видите в строке подключения базы?

Права доступа к каталогам баз

Даже правильный путь бесполезен, если у процесса нет прав на чтение и запись.

Файловая база на общем ресурсе

  • 🔑 Каждому пользователю 1С нужны права на чтение, запись, создание и удаление файлов в папке базы — платформа создаёт там временные файлы.
  • 🔑 Права нужны и на уровне общего ресурса, и на уровне NTFS. Срабатывает более строгое из двух.
  • 🔑 Права только на чтение не дают даже открыть базу в обычном режиме.

Каталог srvinfo и сервер 1С

  • 🛡️ Служба агента сервера в Windows работает от учётной записи (по умолчанию USR1CV8). Ей нужен полный доступ к каталогу srvinfo.
  • 🛡️ В Linux владельцем каталога реестра должен быть usr1cv8. После ручного копирования каталога от root проверьте и при необходимости верните владельца:
sudo chown -R usr1cv8:grp1cv8 /home/usr1cv8/.1cv8

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

Ошибки при поиске базы и доступе к её файлам

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

Ещё две ситуации, на которых часто теряют время:

  • 🧩 Несколько копий одной базы. На сервере находится пять папок с 1Cv8.1CD, и непонятно, какая рабочая. Сравните дату изменения файла и путь в ibases.v8i у пользователей — рабочей будет та, на которую указывают их списки.
  • 🧩 Ищут .1CD у серверной базы. У клиент-серверной базы файла 1Cv8.1CD нет вообще. Если поиск по диску ничего не нашёл, а база работает — она живёт в СУБД.

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

Можно ли открыть файл 1Cv8.1CD напрямую, без добавления в список баз?
Да. Запустите 1cv8.exe с параметром /F"путь к каталогу базы", например 1cv8.exe ENTERPRISE /F"D:\Bases\Buh". Указывается каталог, а не сам файл.
Где хранятся расширения конфигурации?
Внутри самой базы: в 1Cv8.1CD у файловой и в таблицах СУБД у серверной. Отдельные файлы .cfe нужны только для переноса расширения в другую базу.
Почему папка srvinfo занимает много места?
Чаще всего разрастаются журналы регистрации баз в папках reg_1541\<GUID>\1Cv8Log. Их размер ограничивают настройкой журнала в Конфигураторе: Администрирование → Настройка журнала регистрации.
Можно ли скопировать серверную базу, скопировав файлы СУБД?
Не стоит. Файлы .mdf или каталог данных PostgreSQL копируют только при остановленной СУБД и целиком. Для переноса одной базы надёжнее бэкап средствами СУБД или выгрузка в .dt.
Как узнать, на каком сервере СУБД лежит база, если доступа к консоли нет?
Спросите администратора кластера или посмотрите строку в 1CV8Clst.lst рядом с именем базы — там указаны сервер СУБД и имя базы данных. Пароль к СУБД в этом файле хранится не в открытом виде.