Тома хранения файлов в 1С 8.3: как база выносит вложения на диск и что с этим делать администратору
Содержание
Хранить файлы в томах на диске в 1С — значит класть содержимое присоединённых файлов (сканы, PDF, договоры, фото) не в таблицы информационной базы, а в папку на файловом сервере. В базе остаётся только карточка файла и ссылка на его место на диске. Включается это флажком Администрирование → Общие настройки → Присоединенные файлы → Хранить файлы в томах на диске, а сами папки описываются в списке «Тома хранения файлов» рядом.
Механизм работает во всех типовых конфигурациях на Библиотеке стандартных подсистем: 1С:Бухгалтерия 3.0, ЗУП 3.1, УТ 11, КА, ERP, Документооборот. Путь к настройке в них одинаковый. Нужен он, когда база распухает от вложений: архив сканов первички за пару лет легко добавляет 20–50 ГБ, и база с 5 ГБ данных превращается в базу на 60 ГБ, которую долго бэкапить и долго восстанавливать.
Что даёт хранение файлов в томах и когда оно нужно
По умолчанию 1С хранит файлы прямо в информационной базе. Это удобно: одна выгрузка .dt — и всё с собой. Проблемы начинаются с ростом объёма.
Тома имеет смысл включать, если:
- 📈 вложения занимают больше половины размера базы;
- 🕒 резервная копия или выгрузка
.dtидёт часами; - 💾 SQL-сервер стоит на дорогом быстром SSD, а файлы можно положить на дешёвый диск файлового сервера;
- 📎 пользователи массово прикрепляют сканы: акты, УПД, кадровые документы, фото товаров.
Когда тома НЕ нужны:
- база небольшая, файлов мало, отдельного файлового сервера нет;
- база файловая и работает на одном компьютере — выигрыш минимальный, а точек отказа станет две;
- нет человека, который будет следить за папкой томов и включит её в резервное копирование .
Хранение в томах — это не архив и не замена резервной копии. Это просто другое место для тех же файлов. Если папку тома удалить, файлы из базы пропадут так же, как при повреждении самой базы.
Как устроен том: что остаётся в базе, а что уходит на диск
Том хранения файлов — это элемент справочника, где записан путь к папке и правила её заполнения. Томов может быть несколько: 1С пишет в первый по порядку, пока он не заполнится, затем переходит к следующему.
Что где хранится:
| Что | Где лежит при хранении в томах |
|---|---|
| Карточка файла: имя, расширение, автор, дата, владелец (документ, контрагент) | В информационной базе |
| Версии файла (если включены) | Карточки — в базе, содержимое каждой версии — в томе |
| Ссылка на том и относительный путь к файлу | В информационной базе |
| Само содержимое файла (байты) | В папке тома на диске |
| Электронные подписи к файлу | В информационной базе |
Поля карточки тома:
- Наименование — для людей, например «Сканы 2024–2025».
- Порядок заполнения — число. Том с меньшим номером заполняется первым.
- Максимальный размер, МБ — предел тома. 0 означает «без ограничения».
- Полный путь Windows — путь к папке, если сервер 1С работает на Windows.
- Полный путь Linux — путь для сервера на Linux.
Внутри папки тома 1С сама создаёт подпапки и раскладывает файлы. Имя файла на диске может не совпадать с именем в карточке: при совпадении имён программа добавляет к нему отличия. Поэтому руками в папке тома ничего не переименовывать и не перекладывать — связь «карточка → файл» держится на относительном пути, и после ручной правки файл в 1С откроется с ошибкой.
Где хранятся тома на диске: пути, права и клиент-серверный вариант
Главный вопрос при настройке — какой процесс будет писать файл на диск.
Клиент-серверная база
В клиент-серверном варианте файлы в том записывает рабочий процесс сервера 1С, а не компьютер пользователя. Из этого следуют три правила:
- Путь указывается так, как его видит сервер 1С. Для общей папки — сетевой путь:
\\fileserver\1c-volumes\buh\vol01. - Права на запись нужны учётной записи, под которой запущена служба агента сервера 1С. По умолчанию это
USR1CV8, но часто её меняют на доменную учётную запись — посмотрите в свойствах службы. - Подключённые сетевые диски (
Z:\) не используйте: служба их не видит, они существуют только в сеансе пользователя Windows.
Если в кластере несколько рабочих серверов, папка должна быть доступна с каждого из них по одному и тому же пути. Иначе файл запишется, когда запрос попадёт на один сервер, и не откроется, когда попадёт на другой.
Файловая база
В файловом варианте файл пишет тот компьютер, на котором открыт клиент 1С. Путь должен одинаково открываться со всех рабочих мест, поэтому снова только сетевой путь, а права на запись нужны каждому пользователю Windows, который работает с базой.
Сервер на Linux
Для сервера 1С на Linux заполняют поле «Полный путь Linux», например /mnt/1c-volumes/buh/vol01. Сетевую папку монтируют на сервере заранее (через fstab или systemd-mount) и выдают права пользователю, от которого работает сервер 1С (обычно usr1cv8).
Если в организации смешанная схема — например, основной сервер на Linux, а резервный на Windows, — заполните оба пути. Они должны вести в одну и ту же физическую папку.
Плюсы и минусы хранения файлов в томах
| Критерий | Файлы в базе | Файлы в томах на диске |
|---|---|---|
| Размер базы | Растёт вместе с вложениями | Остаётся небольшим |
Выгрузка .dt, бэкап SQL | Медленно, большие файлы | Быстро, но папку томов нужно копировать отдельно |
| Целостность | Всё в одной транзакции | Карточка и файл могут «разъехаться» |
| Перенос базы | Одним файлом .dt | .dt + папка томов + правка путей |
| Нагрузка на СУБД | Выше | Ниже |
| Права доступа | Только через 1С | Добавляются права на папку в Windows/Linux |
| Риск случайного удаления | Низкий | Файлы можно стереть мимо 1С с диска |
Коротко: тома выигрывают по размеру и скорости, но требуют дисциплины в резервном копировании и правах. Если папку томов не включить в план бэкапа, первая же авария покажет пустые вложения во всех документах.
Как включить хранение файлов в томах на диске: пошагово
Делается под пользователем с полными правами. Монопольный режим не нужен, работу пользователей останавливать не обязательно.
Шаг 1. Подготовьте папку
- Создайте папку на файловом сервере, например
D:\1c-volumes\buh\vol01. - Расшарьте её и выдайте права «Изменение» учётной записи службы сервера 1С (для файловой базы — пользователям).
- Проверьте доступ от имени этой учётной записи: откройте путь
\\fileserver\1c-volumes\buh\vol01с сервера 1С и создайте тестовый файл.
Шаг 2. Создайте том
- Откройте
Администрирование → Общие настройки. - В группе «Присоединенные файлы» перейдите по ссылке «Тома хранения файлов».
- Нажмите «Создать», заполните наименование, порядок заполнения (1), максимальный размер и полный путь.
- Запишите том.
💡 Предел размера ставьте с запасом: примерно на 10–15% меньше свободного места на диске. Тогда при заполнении 1С сама перейдёт ко второму тому, а не упрётся в физически полный диск.
Шаг 3. Включите флажок
Вернитесь в Администрирование → Общие настройки → Присоединенные файлы и установите «Хранить файлы в томах на диске». В некоторых релизах рядом есть дополнительные параметры хранения — например, ограничение по размеру файла или по расширениям.
С этого момента в том попадают только новые файлы. Всё, что уже лежит в базе, там и остаётся.
Шаг 4. Перенесите старые файлы
Для переноса накопленных вложений в списке «Тома хранения файлов» есть команда переноса файлов из информационной базы в тома. Она запускает отдельную обработку: выбираете тома и запускаете перенос.
- ⏳ На 30–50 ГБ вложений перенос идёт часами — запускайте вечером или в выходные.
- 🔁 Обработку можно прервать и запустить снова: уже перенесённые файлы повторно не обрабатываются.
- 📉 Размер базы после переноса сам не уменьшится — про это ниже, в разделе об освобождении места.
Шаг 5. Проверьте
Откройте любой документ с вложением, прикрепите новый файл и убедитесь, что в папке тома появился новый файл. Затем откройте старый, перенесённый файл — он должен открываться без ошибок.
Резервные копии, копии базы и проверка целостности томов
Здесь чаще всего теряют данные.
Выгрузка .dt не содержит файлов из томов
Выгрузка информационной базы в .dt и бэкап базы
средствами SQL сохраняют только карточки файлов. Содержимое из томов в них не попадает. Полная резервная копия — это:
- Бэкап базы (
.dtили резервная копия СУБД). - Копия папки томов, сделанная в тот же момент.
Если восстановить базу на вчера, а папку томов — на прошлую неделю, файлы, прикреплённые за эту неделю, откроются с ошибкой. Обратная ситуация — лишние файлы в папке, на которые нет карточек.
Копия базы для тестов пишет в рабочие тома
Типичный сценарий: разворачивают копию рабочей базы для проверки обновления. В копии в карточках томов остались те же пути. Тестировщик удаляет документы, запускает очистку — и копия удаляет файлы из рабочего тома.
Как защититься:
- сразу после развёртывания копии откройте «Тома хранения файлов» и поменяйте пути на отдельную папку;
- если файлы для тестов не нужны — укажите пустую папку, а флажок хранения в томах оставьте как есть;
- при запросе программы о перемещении базы (типовые конфигурации спрашивают, копия это или перенос) отвечайте честно, что это копия: тогда регламентные задания в ней будут отключены.
Что проверяет «Тестирование и исправление», а что нет
Конфигуратор → Администрирование → Тестирование и исправление проверяет таблицы информационной базы: ссылочную целостность, индексы, итоги. Файлы на диске эта процедура не видит. Отсутствующий в томе файл она не найдёт, лишний — не удалит. Для её запуска нужен монопольный доступ, то есть все пользователи должны выйти из базы.
Для томов есть своя проверка: в списке «Тома хранения файлов» откройте том и выполните проверку целостности. Отчёт покажет:
- файлы, которые есть в базе, но отсутствуют на диске;
- файлы на диске, на которые нет ссылок в базе (лишние);
Порядок после аварии или переноса: сначала тестирование и исправление базы в конфигураторе, затем проверка целостности каждого тома в режиме предприятия.
Как освободить место: очистка томов и сжатие базы
Место кончается в двух местах — на диске тома и в самой базе. Действия разные.
В папке тома
- Удалить лишние файлы. В списке томов есть команда удаления лишних файлов: она находит на диске файлы без карточек в базе и удаляет их. Перед запуском убедитесь, что база не восстановлена из старой копии, — иначе «лишними» окажутся свежие файлы, карточки которых просто ещё не вернулись.
- Настроить очистку ненужных файлов. В актуальных релизах БСП в настройках присоединённых файлов есть очистка старых версий и файлов удалённых объектов по правилам и расписанию. Удобно, если в базе включены версии файлов и каждый скан хранится в 3–5 вариантах.
- Добавить том. Создайте второй том на другом диске с порядком заполнения 2. Старые файлы останутся на месте, новые пойдут туда.
Сжимать файлы средствами 1С нельзя: они лежат на диске как есть. Встроенное сжатие NTFS на папке тома работает, но для PDF и JPEG почти ничего не даёт — они уже сжаты.
В самой базе после переноса файлов
После переноса вложений в тома место внутри базы освобождается, но размер её файла не уменьшается:
- файловая база — в
Тестирование и исправлениеотметьте «Сжатие таблиц информационной базы». Нужен монопольный доступ: выберите время, когда в базе никто не работает , и предупредите пользователей — их сеансы придётся завершить; - MS SQL Server — файл данных уменьшают средствами СУБД (сжатие базы или файла в SQL Server Management Studio). Операция долгая и нагружает сервер, после неё стоит перестроить индексы;
- PostgreSQL — место возвращает
VACUUM FULLпо таблицам; он блокирует таблицы, поэтому только в нерабочее время.
Перед сжатием сделайте полную резервную копию базы и папки томов. Сжатие таблиц в файловой базе при сбое питания может повредить файл 1Cv8.1CD.
Типичные ошибки при работе с томами
Ещё две ошибки, которые не дают сообщения, но бьют позже:
- 🗂 папку тома исключили из антивирусной проверки не полностью, и антивирус «лечит» или перемещает файлы — в карточке файл есть, на диске нет;
- 👤 доступ к папке тома открыт всем пользователям домена: кадровые документы из ЗУП можно открыть с диска в обход ролей 1С. Права на папку должны быть только у службы сервера 1С и администраторов.