Войти
  • 33562Просмотров
  • 2 года назадОпубликованоDarien's Tips

Create a Custom WinPE Image Using Windows ADK with the WinPE Add-On

This video will cover the step-by-step procedures for creating a custom Windows Preinstallation Environment (WinPE) ISO using the Windows Assessment and Deployment Kit (ADK). WinPE is an essential tool for all IT professionals, allowing for the deployment, maintenance, and recovery of Windows installations. Applies to: Windows 10, Windows 11 Glossary: ACL = Access Control List ADK = Assessment and Deployment Kit DISM = Deployment Image Servicing and Management ISO = International Organization for Standardization; also refers to a disk image file format that mirrors the content of an optical disc, based on the ISO 9660 file system standard for CD-ROM media. PE = Preinstallation Environment SSH = Secure Shell USB = Universal Serial Bus WIM = Windows Imaging Format WinPE = Windows Preinstallation Environment GitHub: Commands: ============================================== Powershell --Basic WinPE ISO-- $ADKWPEPath = "C:\Program Files (x86)\Windows Kits\10\Assessment and Deployment Kit\Windows Preinstallation Environment\amd64" $winPE = "C:\WinPE_amd64" $winPEISO = "$winPE\ISO" copype amd64 $winPEISO MakeWinPEMedia /ISO $winPEISO $winPEISO\ ========================================= --Custom WinPE ISO-- # -- Set Variables $ADKWPEPath = "C:\Program Files (x86)\Windows Kits\10\Assessment and Deployment Kit\Windows Preinstallation Environment\amd64" $winPE = "C:\WinPE_amd64" $winPEMount = "$winPE\mount" $winPEISO = "$winPE\ISO" $PackagePath = "$ADKWPEPath\WinPE_OCs" $lang="en-us" # -- Mount base Winpe image New-Item -Type Directory $winPEMount Dism /Mount-Image /ImageFile:"$ADKWPEPath\$lang\ " /index:1 /MountDir:$winPEMount # -- Add Drivers Dism /image:$winPEMount /Add-Driver /Driver:C:\Temp\Drivers\Windows10-x64\ Dism /Image:$winPEMount /Get-Drivers # -- Add PowerShell and other components Dism /Add-Package /Image:$winPEMount /PackagePath:"$PackagePath\ " Dism /Add-Package /Image:$winPEMount /PackagePath:"$PackagePath\$lang\WinPE-WMI_$ " Dism /Add-Package /Image:$winPEMount /PackagePath:"$PackagePath\ " Dism /Add-Package /Image:$winPEMount /PackagePath:"$PackagePath\$lang\WinPE-NetFX_$ " Dism /Add-Package /Image:$winPEMount /PackagePath:"$PackagePath\ " Dism /Add-Package /Image:$winPEMount /PackagePath:"$PackagePath\$lang\WinPE-Scripting_$ " Dism /Add-Package /Image:$winPEMount /PackagePath:"$PackagePath\ " Dism /Add-Package /Image:$winPEMount /PackagePath:"$PackagePath\$lang\WinPE-PowerShell_$ " Dism /Add-Package /Image:$winPEMount /PackagePath:"$PackagePath\ " Dism /Add-Package /Image:$winPEMount /PackagePath:"$PackagePath\$lang\WinPE-StorageWMI_$ " Dism /Add-Package /Image:$winPEMount /PackagePath:"$PackagePath\ " Dism /Add-Package /Image:$winPEMount /PackagePath:"$PackagePath\$lang\WinPE-DismCmdlets_$ " Dism /Add-Package /Image:$winPEMount /PackagePath:"$PackagePath\ " Dism /Add-Package /Image:$winPEMount /PackagePath:"$PackagePath\$lang\WinPE-SecureStartup_$ " # -- Change permissions $daFile = "$winPEMount\Windows\System32\ " $NewAcl = Get-Acl -Path $daFile # Set properties $identity = "BUILTIN\Administrators" $fileSystemRights = "FullControl" $type = "Allow" # Create new rule $fileSystemAccessRuleArgumentList = $identity, $fileSystemRights, $type $fileSystemAccessRule = New-Object -TypeName -ArgumentList $fileSystemAccessRuleArgumentList # Apply new rule $ ($fileSystemAccessRule) Set-Acl -Path $daFile -AclObject $NewAcl # -- Copy custome file $daRenamedFile = "$winPEMount\Windows\System32\winpe(OE).jpg" Rename-Item $daFile $daRenamedFile copy c:\temp\ $winPEMount\Windows\System32 # -- Unmount and make ISO Dism /Unmount-Image /MountDir:$winPEMount /commit copype amd64 $winPEISO MakeWinPEMedia /ISO $winPEISO $winPEISO\ # -- Add openssh to path $cmdPath = "$winPEMount\Windows\System32\ " $additionalPath = "X:\Apps\OpenSSH-Win64\OpenSSH-Win64\" Add-Content -Path $cmdPath -Value "set PATH=%PATH%;$additionalPath" ============================================== Chapters 0:00 Introduction 0:51 Installation of Windows ADK and WinPE Add-on 2:12 Create a Basic, Vanilla WinPE ISO 3:00 Create a Custom WinPE ISO 8:07 Notes 8:37 Commands 9:02 Thank You! Hashtags: #WinPE 🖥️ #WindowsDeployment 🚀 #ITSupport 🛠️ #SystemRecovery 🔄 #BootableUSB 💾