Event ID 4312 DFS-R: конфликт одновременного обновления файлов
Симптомы конфликта DFS-R 4312
В журнале DFS Replication регистрируется информационное или предупреждающее событие Event ID 4312: The DFS Replication service detected that a local file or folder was updated, creating a conflict with another update received from a partner.
| Симптом | Где проявляется | Последствия |
|---|---|---|
| Перемещение файла в ConflictAndDeleted | Локальный том NTFS | Пользователь на одном из серверов не видит свои последние правки документа |
| Рост папки ConflictAndDeletedManifest.xml | Скрытая папка DfsrPrivate | Заполнение дисковой квоты, выделенной под конфликты |
| Жалобы пользователей на перезапись файлов | Сетевые папки DFS-N | Эффект «отката» правок при одновременном сохранении файла двумя сотрудниками |
Устранение конфликтов репликации DFS-R (Event ID 4312)
Механизм DFS-R использует эвристику «Last Writer Wins» (побеждает последнее сохранение). Проигравшая версия файла перемещается в скрытое хранилище ConflictAndDeleted. Ниже приведено пошаговое руководство по восстановлению потерянных данных и предотвращению конфликтов.
- Восстановите проигравшую версию документа из папки конфликтов:
# Поиск и экспорт конфликтующих файлов через PowerShell:
$dfsrPrivate = "D:\SharedFolder\DfsrPrivate\ConflictAndDeleted"
Get-ChildItem -Path $dfsrPrivate -Recurse -Force | Select-Object Name, Length, LastWriteTime
# Восстановление манифеста конфликтов в читаемый XML/CSV вид:
Get-CimInstance -Namespace root\microsoftdfs -ClassName DfsrConflictAndDeletedManifest | Select-Object OriginalFileName, ConflictFileName, CompressedSize | Format-Table -AutoSize- Увеличьте размер квоты для ConflictAndDeleted, чтобы файлы не удалялись безвозвратно:
# Увеличение квоты папки конфликтов до 10 ГБ (10240 МБ) через wmic / dfsrc:
dfsradmin.exe mem conf set /rgname:"ИмяГруппыРепликации" /rfname:"ИмяПапки" /memname:"ИмяСервера" /newsize:10240- Настройте правильную маршрутизацию пользователей в DFS-Namespaces: исключите одновременную работу нескольких офисов с одним файлом:
В консоли dfsmgmt.msc в свойствах целевых папок пространства имен настройте Метод упорядочения (Ordering Method) > «Наименьшая стоимость» (Lowest Cost) или отключите второстепенные реплики на запись для предотвращения распределенного редактирования.
Важно: DFS-R не поддерживает распределенную блокировку файлов (Distributed File Locking). Если двум пользователям необходимо одновременно редактировать одни и те же Excel/Word документы в разных филиалах, используйте SharePoint или OneDrive/Teams.
Частые вопросы (FAQ)
Куда пропадают файлы, проигравшие конфликт репликации?
Они перемещаются в скрытую системную папку '<Путь_к_папке>\DfsrPrivate\ConflictAndDeleted' и переименовываются в формат с уникальным GUID. Оригинальное имя сохраняется в файле ConflictAndDeletedManifest.xml.
Как предотвратить одновременное редактирование файлов в DFS?
Настройте активный целевой сервер для филиала через параметры Target Priority в пространстве имен DFS, чтобы пользователи всегда направлялись на один локальный файловый сервер.
Что происходит при переполнении квоты ConflictAndDeleted?
Служба DFS-R начинает автоматически безвозвратно удалять самые старые файлы конфликтов по алгоритму очистки низкого порога (Low Watermark - 60%).
Поддерживает ли DFS-R версионность документов?
Нет, полноценную версионность DFS-R не поддерживает. Для сохранения версий рекомендуется включить 'Теневые копии томов' (VSS / Shadow Copies) на файловых серверах.