Дедупликация уже давно хорошо известна специалистам, работающим с серверными редакциями Windows. Данный механизм позволяет значительно повысить эффективность использования дискового пространства за счет устранения дубликатов данных. В клиентских версиях Windows 10 такая возможность по умолчанию отсутствует, так как сценарии домашнего применения обычно не подразумевают хранение крупных массивов информации. Тем не менее, мы можем добавить эту функцию вручную, что крайне полезно для профессионалов и энтузиастов, стремящихся оптимизировать ресурсы и отложить расширение хранилища. Мы уже описывали включение дедупликация в Windows 8, и этот опыт позволил не только нам, но и многим другим пользователям сэкономить немалые средства.
При релизе Windows 10 такая возможность отсутствовала, что объясняется особенностями появления пакетов для дедупликация, создаваемых на базе серверных редакций. Разработку серверных версий осуществляют с некоторым отставанием от клиентских, поэтому, обновляя систему до новой сборки, важно помнить, что пакеты для дедупликация могут еще не быть доступны.
Следует учитывать, что под общим именем Windows 10 скрывается целый ряд различных ОС, каждая из которых требует собственных пакетов для поддержки дедупликация. В данный момент существуют такие стабильные выпуски (SAC, Полугодовой канал) Windows 10:
Версия | Сборка | Дата выпуска | Окончание поддержки | Дедупликация |
---|---|---|---|---|
1507 (RTM) | 10240 | 29.07.2015 | 09.05.2017 | НЕТ |
1511 | 10586 | 12.11.2015 | 10.10.2017 | ДА |
1607 | 14393 | 02.08.2016 | 10.04.2018 | ДА |
1703 | 15063 | 05.04.2017 | 09.10.2018 | ДА |
1709 | 16299 | 17.10.2017 | 09.04.2019 | ДА |
1803 | 17134 | 30.04.2018 | 12.10.2019 | ДА |
1809 | 17763 | 13.11.2018 | 10.11.2020 | ДА |
1903 | 18362 | 21.05.2019 | 08.12.2020 | ДА |
1909 | 18363 | 12.11.2019 | 11.05.2021 | ДА |
2004 | 19041 | 27.05.2020 | 14.12.2021 | ДА |
Здесь мы не рассматриваем LTSC-версии, так как они не предназначены для массового распространения.
Первая сборка пакетов для дедупликация в Windows 10 была подготовлена для сборки 10514 и основана на компонентах Windows Server 2012. Позднее стали доступны пакеты, созданные на базе Windows Server 2016 (14393) и Windows Server 2019 (17763). Сейчас серверные редакции с графическим интерфейсом перешли на LTSC-канал и новые релизы выходят раз в несколько лет. В канале SAC (Semi-Annual Channel) находится вариант Windows Server без графической оболочки, ориентированный на быстрое внедрение инновационных технологий (контейнеры, микрослужбы).
Итог таков: все промежуточные версии Windows 10, не имеющие аналога в LTSC-выпусках серверной ОС, получают пакеты для дедупликация именно из канала SAC. Это может сказаться на стабильности, так как SAC-версии серверной системы изначально не рассчитаны на использование с рабочим столом. Имеются сведения о проблемах с пакетами для версии 20.04, когда на одной системе они работают, а на другой — нет.
Отдельно стоит отметить инсайдерские версии. В них дедупликация работать не будет, поэтому выбирайте приоритеты осознанно.
Многих интересует, что случится с томами, уже подвергнутыми дедупликация, при обновлении с Windows 8 или при переходах между версиями Windows 10. В целом ничего критичного не происходит — данные останутся целы, но будут недоступны до тех пор, пока вы не установите соответствующие пакеты для текущей сборки ОС.
Важный момент: дедупликация в Windows 10 — неофициальная функция, она не документирована. Ее работа может оказаться нестабильной или вовсе не функционировать. Хотя большинство сценариев не несет прямой угрозы целостности данных, есть риск временно потерять к ним доступ. Используйте эту возможность на свой страх и риск.
Обсуждения по дедупликация в Windows 10, а также размещение пакетов, в основном ведутся на зарубежных ресурсах, часто с файлами на сторонних хостингах. Мы подготовили собственные архивы и разместили их на собственном сервере, чтобы упростить вам процесс.
Для каждой из поддерживаемых версий Windows 10 мы предлагаем соответствующие пакеты:
В каждом архиве присутствуют основные и языковые пакеты (en-US, ru-RU). Установить можно только один языковой пакет на выбор.
Для установки откройте командную строку с правами администратора, перейдите в каталог с распакованными пакетами и выполните команды. Например, для 2004 русской версии:
dism /online /add-package /packagepath:Microsoft-Windows-FileServer-ServerCore-Package~31bf3856ad364e35~amd64~~10.0.19041.1.cab /packagepath:Microsoft-Windows-FileServer-ServerCore-Package~31bf3856ad364e35~amd64~ru-RU~10.0.19041.1.cab
dism /online /add-package /packagepath:Microsoft-Windows-Dedup-Package~31bf3856ad364e35~amd64~~10.0.19041.1.cab /packagepath:Microsoft-Windows-Dedup-Package~31bf3856ad364e35~amd64~ru-RU~10.0.19041.1.cab
dism /online /enable-feature /featurename:Dedup-Core /all
При установке других версий или языков просто измените названия пакетов, соответствующих вашей сборке и языку.
После успешной установки пакетов доступ к уже дедуплицированным данным восстановится без перезагрузки. Графических инструментов для управления дедупликация в Windows 10 нет, поэтому используем PowerShell.
Если вы включаете дедупликация впервые, сначала импортируйте модуль Deduplication:
Set-ExecutionPolicy ByPass -Force
Import-Module Deduplication
Проверить состояние томов можно так:
Get-DedupVolume
Для включения дедупликация на конкретном томе используйте:
Enable-DedupVolume -Volume E:
Без параметров том получит значение «Default». Можно указать тип использования:
— HyperV: для хранения виртуальных машин.
— Backup: для виртуализированных серверов резервного копирования.
— Default: общий тип.
Например:
Enable-DedupVolume -Volume E: -UsageType HyperV
Учтите, что сама команда включения просто активирует дедупликация, но не запускает оптимизацию данных. Данные останутся неоптимизированными до старта задания оптимизации.
Перед запуском оптимизации рекомендуется настроить параметры. Например, установить минимальный возраст файлов для дедупликации (в сутках). Чем меньше это значение, тем выше эффективность, но и нагрузка на систему возрастает.
Для установки минимального возраста в 0 дней:
Set-DedupVolume -Volume E: -MinimumFileAgeDays 0
Можно указать минимальный размер файла. Например, 512 МБ (536870912 байт):
Set-DedupVolume -Volume E: -MinimumFileSize 536870912
Опции можно комбинировать. Можно также исключить определенные папки:
Set-DedupVolume -Volume E: -ExcludeFolder E:\Folder1
Для добавления еще одной папки укажите обе через запятую, иначе предыдущая настройка будет перезаписана:
Set-DedupVolume -Volume E: -ExcludeFolder E:\Folder1, E:\Folder2
Так же можно исключать файлы по типам:
Set-DedupVolume -Volume E: -ExcludeFileType tmp, lck
После настройки запускаем оптимизацию:
Start-DedupJob -Volume E: -Type Optimization
Контролировать прогресс:
Get-DedupJob
Существуют и другие типы задач для Start-DedupJob:
1) Optimization: оптимизация данных.
2) Garbage Collection: удаление неиспользуемых или удаленных блоков.
3) Scrubbing: проверка целостности данных.
4) Unoptimization: отмена дедупликации.
Изначальная оптимизация может занять много времени и создать существенную нагрузку на диск (примерно 20-40 МБ/с), поэтому планируйте операции с учетом этого.
Практика показывает, что дедупликация оправдывает себя: например, оптимизируя хранилище виртуальных машин, можно было бы уже давно расширять дисковое пространство, если бы не эта технология.
После настройки проверьте и скорректируйте расписание регламентных заданий, чтобы они выполнялись тогда, когда компьютер гарантированно включен. Некоторые задания запланированы на глубокую ночь, что для рабочей станции не всегда подходит.
Если потребуется отключить дедупликация, сначала следует выполнить обратную операцию (Unoptimization), чтобы восстановить исходный вид данных:
Start-DedupJob -Volume E: -Type Unoptimization
Если места для восстановления недостаточно, процесс приостановится. После его завершения можно отключить дедупликация:
Disable-DedupVolume -Volume E:
Таким образом, благодаря стараниям энтузиастов, мы можем использовать дедупликация и в Windows 10. Хотя установка и управление требуют определенных знаний и готовности к риску, экономия дискового пространства и гибкость в работе с данными того стоят. Особенно это актуально для специалистов и энтузиастов, для которых использование консоли и командной строки — привычное дело.