Исключение файлов из теневых копий
В Windows Vista и Windows Server 2008 и более поздних версиях разработчик модуля записи VSS или приложения может исключить определенные файлы из теневых копий.
Влияние на производительность и область хранения теневого копирования (также называемая "областью diff") для файла в теневой копии напрямую связаны с объемом изменений в содержимом файла после создания теневой копии. Кроме того, исключение файлов из теневых копий может замедлить создание теневых копий.
По этим причинам файл следует исключить из теневых копий только в том случае, если он большой, он существенно изменяется между одной теневой копией и следующей и не требует резервного копирования.
Следует исключать только файлы, принадлежащие приложению.
Если флаг VSS_VOLSNAP_ATTR_NO_AUTORECOVERY установлен в контексте теневого копирования, это означает, что автоматическое восстановление отключено и файлы не могут быть исключены из теневой копии. Дополнительные сведения см. в перечислении _VSS_VOLUME_SNAPSHOT_ATTRIBUTES .
Использование метода AddExcludeFilesFromSnapshot
Модуль записи VSS может исключить файлы из теневой копии следующим образом:
- Вызовите метод IVssCreateWriterMetadataEx::AddExcludeFilesFromSnapshot, чтобы сообщить об исключаемых файлах.
- В методе CVssWriter::OnPostSnapshot модуля записи удалите файлы из теневой копии.
Использование раздела реестра FilesNotToSnapshot
Примечание
Раздел реестра FilesNotToSnapshot предназначен для использования только приложениями. Пользователи, пытающиеся использовать этот раздел, сталкиваются с приведенными ниже ограничениями.
- Он не может удалять файлы из теневой копии, созданной на Windows Server, с помощью функции "Предыдущие версии".
- Он не может удалить файлы из теневых копий общих папок.
- Он может удалять файлы из теневой копии, созданной с помощью служебной программы DiskShadow , но не может удалять файлы из теневой копии, созданной с помощью служебной программы Vssadmin .
- Файлы удаляются из теневой копии при наличии соответствующих ресурсов и возможностей. Это означает, что их удаление не гарантируется.
Приложение VSS может удалять файлы из теневой копии во время создания теневого копирования с помощью следующего раздела реестра:
HKEY_LOCAL_MACHINE\System\CurrentControlSet\Control\BackupRestore\FilesNotToSnapshot
Этот раздел реестра содержит REG_MULTI_SZ значения для каждого приложения, файлы которого можно исключить. Файлы задаются полными путями, которые могут содержать подстановочный знак *.
Во всех случаях запись игнорируется, если нет файлов, соответствующих строке пути.
После добавления файла в соответствующее значение раздела реестра он удаляется из теневой копии во время создания модулем оптимизации теневой копии.
Если не удается указать полный путь, то путь также можно использовать с помощью переменной $UserProfile$ или $AllVolumes$. Пример:
- $UserProfile$\Directory\Subdirectory\FileName.*
- $AllVolumes$\TemporaryFiles\*.*
Чтобы сделать путь рекурсивным, добавьте в конец "/s". Пример:
- $UserProfile$\Directory\Subdirectory\FileName.* /s
- $AllVolumes$\TemporaryFiles\*.* /s
Переменная $UserProfile$ приводит к применению строки пути ко всем профилям пользователей на компьютере. Профили пользователей перечисляются путем проверки следующего раздела реестра:
HKEY_LOCAL_MACHINE\Software\Microsoft\Windows NT\CurrentVersion\ProfileList
Переменная $AllVolumes$ приводит к применению строки пути ко всем теневым копиям на компьютере. Например, предположим, что путь — "$AllVolumes$\TemporaryFiles\*.* /s", а компьютер имеет три тома: C:, D:и E:. Если C: и E: содержат путь "\TemporaryFiles\", а том D: содержит только путь D:\Data\, дерево каталогов C:\TemporaryFiles\ удаляется из теневых копий C:, а дерево каталогов E:\TemporaryFiles\ удаляется из теневых копий E:.
Администраторы могут отключить расширение переменной $UserProfile$, используя следующий раздел реестра:
HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\Vss\Settings
В этом разделе реестра укажите DisableUserProfileExpansion для имени значения, REG_DWORD для типа значения и ненулевое значение для данных значения.
Сведения о разделе реестра FilesNotToBackup
Раздел реестра FilesNotToBackup можно использовать для указания имен файлов и каталогов, которые приложения резервного копирования не должны архивировать или восстанавливать. Однако эти файлы не исключаются из теневых копий. Дополнительные сведения об этом разделе реестра см. в разделе Разделы реестра и значения для резервного копирования и восстановления.