Найти в Дзене
Т.Е.Х.Н.О Windows & Linux

Создание Собственного Дистрибутива Windows с DISM: Полное Руководство 2025🚀

Оглавление

Получаем готовый к развёртыванию образ Windows с предустановленными приложениями, драйверами и настройками безопасности.

📋 Введение

DISM (Deployment Image Servicing and Management) — консольный инструмент от Microsoft для обслуживания Windows-образов. С его помощью можно:

- Автоматизировать развёртывание

- Стандартизировать окружение

- Внедрять политики безопасности ещё на этапе образа

- Гибко настраивать под ―специфику вашей инфраструктуры 😊

🛠️ Подготовка инфраструктуры

Системные требования:

  • OS: Windows 10/11 или Server 2019/2022
  • RAM: ≥ 8 GB (рекомендуется 16 GB)
  • Свободное место: ≥ 100 GB
  • Права: локальный администратор

Установка компонентов ADK:

  1. Assessment and Deployment Kit (версия 10.1.26100.1742, август 2025)
  2. Deployment Tools
  3. WinPE
  4. USMT

🔧 Создание базового образа

Создаём папки:

mkdir C:\WIMMount
mkdir C:\Images
mkdir C:\Sources

Копируем install.wim из ISO:

copy "D:\sources\install.wim" "C:\Sources\install.wim"

Просматриваем редакции:

DISM /Get-WimInfo /WimFile:"C:\Sources\install.wim"

Монтируем выбранную (например, Pro):

DISM /Mount-Image /ImageFile:"C:\Sources\install.wim" /Index:1 /MountDir:"C:\WIMMount"

⚠️ Исключите папку C:\WIMMount из антивирусного сканирования для максимальной скорости.

📦 Интеграция обновлений и пакетов

Актуализация по август 2025: проверяем Security Advisories, Update Catalog, GitHub Releases, Dependabot, PyPI, npm и vendor-сервисы.

  • Добавляем накопительный патч:

DISM /Image:"C:\WIMMount" /Add-Package /PackagePath:"C:\Updates\KB5063875.msu"

  • Интегрируем .NET-обновления:

DISM /Image:"C:\WIMMount" /Add-Package /PackagePath:"C:\Updates\NDP472-KB4054530-x86-x64-AllOS-ENU.exe"

  • Проверяем список пакетов:

DISM /Image:"C:\WIMMount" /Get-Packages /Format:Table

🔐 Настройка безопасности

Внедряем CIS Benchmarks и NIST:

Credential Guard:

reg add "HKLM\WIMMount\SYSTEM\CurrentControlSet\Control\DeviceGuard" /v "RequirePlatformSecurityFeatures" /t REG_DWORD /d 1

Windows Defender:

reg add "HKLM\WIMMount\SOFTWARE\Policies\Microsoft\Windows Defender" /v "DisableAntiSpyware" /t REG_DWORD /d 0

Secure Boot (UEFI):

reg add "HKLM\WIMMount\SYSTEM\CurrentControlSet\Control\SecureBoot\State" /v "UEFISecureBootEnabled" /t REG_DWORD /d 1

Отключаем SMBv1 и настраиваем политики паролей через реестр.

🎨 Кастомизация и оптимизация

  • Удаляем встроённые приложения Store:

DISM /Image:"C:\WIMMount" /Remove-ProvisionedAppxPackage /PackageName:"Microsoft.BingWeather_*"
DISM /Image:"C:\WIMMount" /Remove-ProvisionedAppxPackage /PackageName:"Microsoft.Xbox.TCUI_*"

  • Добавляем корпоративное ПО и драйверы:

msiexec /i "C:\Software\App.msi" /qn TARGETDIR="C:\WIMMount\Program Files\App"
DISM /Image:"C:\WIMMount" /Add-Driver /Driver:"C:\Drivers" /Recurse /ForceUnsigned

📋 Проверка и оптимизация образа

CheckHealth/ScanHealth/RestoreHealth:

DISM /Image:"C:\WIMMount" /Cleanup-Image /CheckHealth
DISM /Image:"C:\WIMMount" /Cleanup-Image /ScanHealth
DISM /Image:"C:\WIMMount" /Cleanup-Image /RestoreHealth

Чистим кэш и уменьшает размер:

DISM /Image:"C:\WIMMount" /StartComponentCleanup /ResetBase
DISM /Image:"C:\WIMMount" /SPSuperseded

💾 Сборка финального дистрибутива

  • Применяем изменения и размонтируем:

DISM /Unmount-Image /MountDir:"C:\WIMMount" /Commit

  • Экспорт оптимизированного WIM:

DISM /Export-Image /SourceImageFile:"C:\Sources\install.wim" /SourceIndex:1 /DestinationImageFile:"C:\Images\custom-win11.wim" /Compress:Max /CheckIntegrity

  • Генерируем загрузочный ISO через oscdimg:

oscdimg -m -o -u2 -udfver102 -bootdata:2#p0,e,b"C:\ISO\boot\etfsboot.com"#pEF,e,b"C:\ISO\efi\microsoft\boot\efisys.bin" "C:\ISO" "C:\Images\CustomWin11.iso"

🧪 Тестирование и CI/CD

Тестируем на Hyper-V, VMware, физическом железе и по сети через WDS/PXE.

Мониторим события PowerShell:

Get-WinEvent -LogName "Microsoft-Windows-Kernel-General/Operational" | Where-Object {$_.Id -eq 12}

Автоматизируем через PowerShell DSC:

Configuration CustomWinBuild {
Node "localhost" {
WindowsFeature IIS { Ensure="Present"; Name="IIS-WebServerRole" }
Registry DisableTelemetry {
Key="HKLM:\SOFTWARE\Policies\Microsoft\Windows\DataCollection"
ValueName="AllowTelemetry"; ValueData=0; ValueType="DWord"
}
}
}

🎯 Рекомендации

  • Используйте SSD и выключайте антивирус на монтируемых папках.
  • Ведите чёткое документирование и делайте резервные копии.
  • Обновляйте образы ежемесячно согласно CVE и Vendor Advisories.
-2

Присоединяйтесь к каналу Т.Е.Х.Н.О Windows & Linux для новых гайдов и инсайтов!

#DISM #Windows11 #WindowsDeployment #Microsoft #SystemAdministration #IT #WinPE #ImageManagement #Security #Automation #PowerShell #WindowsADK #EnterpriseIT #DevOps #Infrastructure #Virtualization #MDT #SCCM #Intune #CyberSecurity #WindowsServer #GroupPolicy #Registry #Optimization #TechGuide #ITSolutions #WindowsSecurity #Deployment #SystemImage #WindowsManagement