Заметки о Windows и других программных продуктах Microsoft...

Включаем Pervious Versions в Windows Server 2012

Включаем Pervious Versions в Windows Server 2012

Представим себе такую ситуацию: имеется файловая шара с важными документами, расположенная на файловом сервере. Пользователь открывает один из документов и вносит в него ошибочные данные. Обнаружив ошибку, пользователь обращается к администратору и требует вернуть документ в первоначальное состояние. Администратор находит резервную копию и восстанавливает испорченный файл.

Процедура довольно стандартная, но ее можно значительно сократить. Для этого необходимо убрать из цепочки администратора и дать пользователю возможность самому восстанавливать документы. Сделать это можно с помощью функции Pervious Versions (предыдущие копии), которая позволяет пользователю самостоятельно, не обращаясь к администратору, восстанавливать измененные\удаленные файлы.

Функционал Pervious Versions основан на службе теневого копирования (Volume Shadow Copies, VSS). Служба VSS активируется для логического диска (тома), после чего  VSS создает моментальный снимок всех файлов, находящихся на диске. После этого VSS начинает отслеживать изменения на диске, для чего разбивает все данные на блоки по 16Кб. Если данные в таком блоке были изменены, то блок сохраняется в теневой копии. Такой подход позволяет сэкономить дисковое пространство, поскольку в теневых копиях хранятся не все данные целиком, а только изменения, произошедшие с момента создания предыдущего снимка.

Полученные снимки хранятся в хранилище теневых копий, которое может располагаться на том же, либо на отдельном диске. Файлы теневых копий располагаются в скрытом каталоге System Volume Information.

Служба VSS можно включить только для логического диска целиком. Нельзя добавить или исключить отдельные файлы или каталоги — или все или ничего. Если диск примонтирован как папка, то для него теневые копии делаться не будут, для такого диска необходимо явно включить VSS.

Настройка Pervious Versions

Открываем оснастку управления дисками (Win+R -> diskmgmt.msc) выбираем нужный диск. Кликаем на нем правой клавишей мыши и в контекстном меню выбираем пункт «Properties».

оснастка управление дисками

 

В свойствах диска переходим на вкладку «Shadow Copies», выделяем том и жмем на кнопку «Enable».

включение VSS в свойствах дисках

 

В этот момент будет произведено включение VSS, а также создана первая теневая копия выбранного тома.

после включения VSS

 

Для дополнительной настройки после включения жмем кнопку «Settings». Здесь можно изменить расположение хранилища теневых копий, которое по умолчанию  размещается на исходном диске. Также можно указать максимальный размер хранилища.

Примечание. По умолчанию хранилище теневых копий может занимать до 10% от размера диска. Поскольку в снимках хранятся только изменения, для их хранения требуется меньше места, чем может показаться. Однако в хранилище теневых копий может храниться только 64 снимка, поэтом по достижении этого числа при создании нового снимка старые начинают удаляться. То же самое происходит и при достижении лимита дискового пространства.

настройки VSS

 

Для настройки расписания создания теневых копий жмем на кнопку «Schedule». В выпадающем списке уже есть несколько готовых заданий, однако я предпочитаю удалить их и по кнопке «New» создать свое. В примере укажем ежедневный запуск в 9:00 утра.

настройка основного расписания VSS

 

По кнопке «Advanced» можно произвести дополнительные настройки расписания. В нашем примере укажем повтор задания каждый час в течение 9 часов. Т.е. снимки будут делаться каждый час в течении рабочего дня.

настройка дополнительного расписания VSS

 

В варианте установки Server Core, при котором отсутствуют необходимые графические оснастки, все вышеописанные действия можно произвести из командной строки. Например так мы включаем VSS для тома С, разместив хранилище теневых копий на том же диске и указав его максимальный размер 4GB:

vssadmin add shadowstorage /for=C: /on=C: /maxsize=4GB

Так создаем теневую копию диска С:

vssadmin create shadow /for=C:

Ну и задать создание копий по расписанию можно такой командой:

schtasks /create /SC daily /TN PerviousVersions /TR ″vssadmin create shadow /for=C:″ /ST 09:00 /RI 60 /DU 09:00

где:

/SC — расписание;
/TN — имя задания;
/TR — команда, которая должна быть исполнена;
/ST — время начала;
/RI — интервал повторения в минутах;
/DU — длительность выполнения.

настройка VSS из командной строки

 

Если теперь открыть свойства папки и перейти на вкладку Pervious Versions, то там будет список имеющихся теневых копий. Их можно открывать и просматривать (open), можно скопировать (copy) или восстановить в исходное размещение (restore). И что самое приятное, все эти действия не требуют вмешательства администратора и могут быть произведены самим пользователем.

выбор предыдущей версии в свойствах папки

 

В заключение несколько замечаний:

• По умолчанию в качестве хранилища теневых копий выбирается исходный диск, но при желании можно хранить снимки и на другом диске. В случае с другим физическим диском это может несколько повысить быстродействие дисковой системы и ее отказоустойчивость;
• Выбор расположения хранилища является окончательным. При перемещении хранилища все находящиеся в нем снимки будут потеряны;
• При отключении службы VSS для тома все его снимки будут удалены;
• Для томов с VSS рекомендуется устанавливать размер кластера не меньше 16Кбайт. При размерах менее 16Кб провайдер VSS не может точно определить, был ли файл дефрагментирован или изменен, и поэтому обрабатывает дефрагментированный файл как измененный, т.е. создает новую теневую копию. Это приводит к большому количеству теневых копий и перезаписи существующих копий;
• Не стоит включать VSS для системного тома. Операционная система генерирует много изменений, поэтому количество теневых копий на системном диске будет большим;
• В теневых копиях сохраняются разрешения NTFS и шифрование. Об этом надо помнить при восстановлении файлов;
• И конечно же, не стоит использовать VSS и механизм Pervious Versions как замену полноценному резервному копированию.

 
 
Комментарии
Андрей

Доброго времени суток.
Кирилл подскажите.

Возникает проблема спустя неделю работы сервера на базе Windows server 2012R2 пропадают теневые копии из просмотра(свойство папки — предыдущие версии ) просто пусто и сообщение: Предыдущие версии не обнаружены.

На разделе где хранятся сами данные настроено теневое копирование на это же раздел.

Если смотрю оснастку управление дисками выбираю диск на котором хранятся сами данные то вижу что копии теневые создаются по расписанию.

После перезагрузки сервера отображение копий работает нормально.

но спустя время отображение пропадает вновь.

В просмотре событий заметил:

Служба VSS выключается из-за тайм-аута простоя.

И еще:

VssAdmin: Unable to create a shadow copy: Either the specified volume was not found or it is not a local volume.
Командная строка: ‘C:\Windows\system32\vssadmin.exe Create Shadow /AutoRetry=15 /For=\\?\Volume{d65b17fd-5df9-11e6-80e3-001a64a1a3cc}\’.

Но как может быть Not found когда в управление дисками раздел видно и система видит раздел. Диск не отпадывает.

Почему я написал не отпадывает потому что раздел на котором создаются теневые копии подключается к серверу с сетевого хранилища хранилища с помощью Инициатор iSCSI

Как можно вернуть нормальное отображение копий без перезагрузки сервера ?

P.S
Нет возможности перезагружать сервер каждый день и даже в выходные.

Приветствие.
Исправьте пожалуйста «Pervious»(проницаемый) на «Previous»(предыдущий).
А так — статья хорошая, спасибо.

Ответить