Перенос списка информационных баз 1С: файл v8i, общий список и групповые политики
Содержание
Чтобы скопировать список баз 1С, достаточно перенести один файл — ibases.v8i из папки %APPDATA%\1C\1CEStart. Положите его в ту же папку на новом компьютере или в другом профиле, и окно запуска 1С:Предприятия покажет те же базы с теми же названиями и папками.
Частое заблуждение: «скопировал список — значит, перенёс базы». Нет. В файле хранятся только ярлыки: имя базы и строка подключения. Данные файловых баз лежат в папках с 1Cv8.1CD, серверных — в СУБД. Если список ссылается на C:\Bases\Buh, а такой папки на новом ПК нет, база откроется с ошибкой.
Где 1С хранит список информационных баз
Список баз платформа 8.3 ведёт отдельно для каждого пользователя Windows. Реестр для этого не используется, всё лежит в обычных текстовых файлах.
| Файл | Где лежит | Что в нём |
|---|---|---|
ibases.v8i | %APPDATA%\1C\1CEStart\ | личный список баз пользователя |
1CEStart.cfg | %APPDATA%\1C\1CEStart\ | личные настройки окна запуска, в том числе ссылки на общие списки |
1CEStart.cfg | %PROGRAMDATA%\1C\1CEStart\ | настройки окна запуска для всех пользователей компьютера |
Развёрнутый путь к личному списку выглядит так: C:\Users\Иванов\AppData\Roaming\1C\1CEStart\ibases.v8i. Папка AppData скрыта, поэтому проще открыть её через Win+R и ввести %APPDATA%\1C\1CEStart.
На Linux список лежит в домашнем каталоге: ~/.1C/1cestart/ibases.v8i. Формат файла тот же, его можно переносить между Windows и Linux, если поправить пути к файловым базам.
Как устроен файл v8i
Это текстовый файл в формате INI. Каждая база — отдельная секция, имя в квадратных скобках совпадает с тем, что видно в окне запуска. Пример двух баз, файловой и серверной:
[Бухгалтерия ООО Ромашка]
Connect=File="\\fs01\Bases\Romashka_BP";
ID=6f1b2c3d-4e5f-4a6b-8c7d-9e0f1a2b3c4d
OrderInList=1
Folder=/Бухгалтерия
OrderInTree=1
External=0
ClientConnectionSpeed=Normal
App=Auto
WA=1
Version=8.3
[ЗУП Ромашка]
Connect=Srvr="srv1c";Ref="romashka_zup";
ID=0a1b2c3d-4e5f-4a6b-8c7d-112233445566
OrderInList=2
Folder=/Зарплата
External=0
App=Auto
WA=1
Version=8.3
Ключевые строки:
- 🔗
Connect— строка подключения.File=для файловой базы,Srvr=иRef=для серверной,ws=для базы, опубликованной на веб-сервере. - 🗂
Folder— папка в дереве окна запуска./означает корень. - 🆔
ID— уникальный идентификатор записи в списке. У двух баз в одном файле он не должен совпадать. - 🔢
Version— какой версией платформы запускать базу.8.3значит «последняя установленная 8.3». - 👤
WA=1— вход с аутентификацией Windows, если для пользователя базы она настроена.
Копирование файла ibases.v8i вручную
Самый быстрый способ для одного-двух компьютеров. Занимает пару минут.
- На исходном ПК закройте окно запуска и все сеансы 1С.
- Откройте
%APPDATA%\1C\1CEStartи скопируйтеibases.v8iна флешку или в сетевую папку. - На новом ПК установите платформу 1С той же версии и один раз запустите её. Папка
1CEStartсоздастся сама. - Закройте окно запуска на новом ПК. Иначе при выходе оно может перезаписать файл своим списком.
- Скопируйте
ibases.v8iв%APPDATA%\1C\1CEStartс заменой. - Запустите 1С и проверьте, что базы видны и открываются.
Замена файла стирает список, который уже был у пользователя на новом ПК. Если там есть свои базы, сначала переименуйте старый файл в ibases_old.v8i, а нужные секции потом перенесите вручную.
Как объединить два списка
Файл можно редактировать «Блокнотом». Чтобы добавить базы к уже существующему списку:
- откройте оба файла;
- скопируйте секции нужных баз целиком, от строки в квадратных скобках до следующей секции;
- вставьте их в конец целевого файла;
- проверьте, что имена секций и значения
IDне повторяются; - сохраните в кодировке UTF-8.
Сохранение в другой кодировке — частая причина, по которой кириллица в названиях баз превращается в «кракозябры». Если это случилось, восстановите файл из копии и сохраните заново в UTF-8.
Нужна одна-две базы, а не весь список? Не трогайте файл. В окне запуска нажмите Добавить, выберите добавление существующей базы и укажите путь к папке или имя сервера и базы. Для серверной базы так даже надёжнее: строка подключения соберётся без опечаток.
Пакетное копирование списка скриптами
Отдельная утилита для массового переноса списков не нужна. Платформа сама читает ibases.v8i из профиля, поэтому задача сводится к копированию файла в нужные профили. С этим справляется обычный скрипт.
Разложить список по всем профилям на одном компьютере
Пригодится на терминальном сервере, где работают десятки пользователей. Скрипт PowerShell запускайте от имени администратора, когда пользователи вышли из системы:
$source = "\\fs01\1C\ibases.v8i"
Get-ChildItem "C:\Users" -Directory |
Where-Object { $_.Name -notin @("Public", "Default", "All Users", "Default User") } |
ForEach-Object {
$target = Join-Path $_.FullName "AppData\Roaming\1C\1CEStart"
New-Item -ItemType Directory -Path $target -Force | Out-Null
Copy-Item $source (Join-Path $target "ibases.v8i") -Force
}
Скрипт перезаписывает список у всех. Если у бухгалтеров есть личные базы, такой подход их удалит. Тогда лучше общий список, о нём ниже.
Скрипт входа для пользователя
Короткий .bat, который выполняется при входе в Windows и кладёт актуальный список в профиль:
@echo off
if not exist "%APPDATA%\1C\1CEStart" mkdir "%APPDATA%\1C\1CEStart"
copy /Y "\\fs01\1C\ibases.v8i" "%APPDATA%\1C\1CEStart\ibases.v8i"
Файл на сетевом ресурсе должен быть доступен пользователям на чтение. Писать в него им не нужно.
Общий список баз для всех пользователей
Вместо копирования файла по профилям можно подключить общий список. Пользователь видит в окне запуска и свои базы, и базы из общего файла. Администратор правит один файл на сервере, и изменения появляются у всех.
Подключение делается строкой CommonInfoBases в файле 1CEStart.cfg:
CommonInfoBases=\\fs01\1C\common.v8i
Где прописать строку:
| Куда | Для кого сработает |
|---|---|
%APPDATA%\1C\1CEStart\1CEStart.cfg | для одного пользователя |
%PROGRAMDATA%\1C\1CEStart\1CEStart.cfg | для всех пользователей этого компьютера |
Строк CommonInfoBases может быть несколько, по одной на каждый общий файл. Например, отдельный список для бухгалтерии и для склада.
То же самое настраивается без правки файлов. В окне запуска нажмите Настройка и добавьте путь к .v8i в список общих информационных баз. Так удобно проверить, что файл читается, прежде чем раздавать настройку на весь отдел.
Базы из общего списка пользователь не может удалить или переименовать у себя: при следующем запуске они вернутся. Это удобно, когда бухгалтеры случайно «теряют» базу из окна запуска.
Перенос списка с серверными базами
Для клиент-серверной базы в списке хранятся только имя сервера и имя базы в кластере. Сам файл переносится так же, но открытие базы зависит от сети и версии клиента.
Что проверить на новом компьютере
- Версия платформы. Клиент должен быть той же версии, что и сервер 1С, вплоть до последней цифры. Посмотреть версию сервера можно в консоли администрирования серверов 1С:Предприятия.
- Имя сервера. Компьютер должен находить сервер по имени из строки
Srvr=. Проверьте командойping srv1c. Сервер сообщает клиенту адреса рабочих процессов по своему имени, поэтому подключения только по IP-адресу часто недостаточно. - Порты. Клиент обращается к агенту сервера на порт
1540, затем к менеджеру кластера на1541и к рабочим процессам. Их порты задаются диапазоном в свойствах рабочего сервера, по умолчанию1560-1591. Все эти порты должны быть открыты на межсетевом экране между клиентом и сервером. - Нестандартный порт. Если кластер работает не на
1541, порт указывают в строке подключения:Srvr="srv1c:2541";Ref="romashka_zup";.
Если базы переехали на новый сервер
При смене сервера в списке надо поменять имя в строке Srvr=. Для двадцати баз это удобно сделать заменой текста в «Блокноте»: заменить Srvr="srv1c-old" на Srvr="srv1c-new" по всему файлу.
Имя базы в кластере (Ref=) на новом сервере может отличаться. Сверьте его со списком информационных баз кластера в консоли администрирования.
Веб-доступ вместо прямого подключения
Если у удалённого сотрудника нет доступа к портам сервера, базу публикуют на веб-сервере. Тогда в списке будет строка Connect=ws="https://1c.example.ru/romashka_bp";. Такую запись можно копировать на любой компьютер с подходящей версией клиента и доступом к адресу.
Раздача списка через групповые политики
В домене с десятками рабочих мест копировать файл руками неудобно. Список баз в реестре 1С не хранит, поэтому политика раздаёт не ключ реестра, а файлы.
Схема на объектах групповой политики Windows Server:
- Положите эталонный
common.v8iв сетевую папку, доступную на чтение группе «Пользователи домена». - Создайте объект групповой политики и привяжите его к подразделению с компьютерами бухгалтерии.
- В разделе
Конфигурация компьютера → Настройка → Конфигурация Windows → Файлысоздайте элемент, который копирует подготовленный1CEStart.cfgсо строкойCommonInfoBasesв%ProgramData%\1C\1CEStart\. - Выполните на тестовой машине
gpupdate /forceи проверьте окно запуска.
Если общий список не подходит и нужен именно личный ibases.v8i, используйте элемент «Файлы» в конфигурации пользователя с путём назначения %AppData%\1C\1CEStart\ibases.v8i. Действие выбирайте «Заменить» или «Обновить» осознанно: оба перезапишут личный список пользователя.
Ошибки после переноса списка и как их исправить
Почти все проблемы после копирования списка — не в самом файле, а в том, на что он ссылается. Найдите свой симптом:
%APPDATA%\1C\1CEStart под тем пользователем, который запускает 1С. На терминальном сервере у каждого пользователя свой профиль.Частые ошибки при переносе
- ❌ Копируют только список и удаляют старый компьютер. Для файловых баз на локальном диске нужно отдельно перенести папки с данными. Иначе в списке останутся ярлыки, ведущие в никуда.
- ❌ Пишут пути через букву диска.
Z:\Bases\Buhработает только там, где диск Z подключён к той же папке. Путь\\fs01\Bases\Buhработает везде, где есть доступ к ресурсу. - ❌ Склеивают списки без проверки ID. Две секции с одинаковым
IDокно запуска может показать неправильно. Проще удалить строкуIDу вставленной базы: платформа сгенерирует новый идентификатор. - ❌ Хранят общий список в папке с правом записи для всех. Любой пользователь сможет случайно его испортить, и база пропадёт у всего отдела. Оставьте запись только администраторам.