Использование скрипта PowerShell для создания образа для восстановления
Создание образа для восстановления DaRT с помощью скрипта PowerShell
Образ восстановления Microsoft Diagnostics and Recovery Toolset (DaRT) 10 можно создать с помощью скрипта PowerShell вместо использования мастера образа для восстановления DaRT 10. См. следующий пример скрипта.
This script was auto generated by the Microsoft DaRT Recovery Image Wizard.
###
This script uses the DISM and DaRT PowerShell commands to create a bootable DaRT image.
###Both a WIM and ISO file are produced.
###
### Examples of how to burn/copy the DaRT ISO to DVD/USB are available at the end of this script.
###
$ErrorActionPreference = "Stop";
### This variable tells PowerShell to stop if an error occurs.
###
### Import the modules necessary for DaRT Image creation.
###
Import-Module "Dism"
I
mport-Module "Microsoft.Dart"
###
### Specifies where the Windows 10 media is located and where the ISO and WIM files will be saved.
### These can be changed as necessary.
###
$Win10MediaPath = "D:\";
### This is the path of the Windows 10 media.
$DestinationWimPath = "C:\Users\Administrator\Desktop\DaRT10\x64\boot.wim";
### Specify where the WIM file will be saved.
$DestinationIsoPath = "C:\Users\Administrator\Desktop\DaRT10\x64\DaRT10.iso";
### Specify where the ISO will be saved.
###
### These variables are used to specify temporary and output directories based on the paths above.
###
$WimParentPath = (Split-Path -Path "$destinationWimPath" -Parent);
### Specify the directory where the DaRT WIM file will be saved.
$IsoParentPath = (Split-Path -Path "$destinationIsoPath" -Parent);
### This is the directory where the DaRT ISO file will be saved.
$TempMountPath = "$env:temp\DaRT10Mount_$(Get-Random)";
### Specify the temporary directory used to mount the Windows image.
###
### Prepare the windows image.
###
### Guarantee the output directories exists.
New-Item -Path $WimParentPath -Type Directory -Force
New-Item -Path $IsoParentPath -Type Directory -Force
New-Item -Path $TempMountPath -Type Directory -Force
### Create a copy of the WIM and remove the read-only attribute.
### The WIM file will be the resulting dart image.
Copy-Item "$Win10MediaPath\sources\boot.wim" $DestinationWimPath -Force
Set-ItemProperty $DestinationWimPath -Name IsReadOnly -Value $false
### Mount the bootable image within the WIM file (normally index 2).
Mount-WindowsImage -ImagePath $DestinationWimPath -Path $TempMountPath -Index 2
###
### Add additional drivers to the image.
###
###
### Installs the specified driver(s) into the image.
###
Add-WindowsDriver -Path $TempMountPath -Driver "C:\Windows\System32\DriverStore\FileRepository
\xusb22.inf_amd64_89c20c625f14f923\xusb22.inf" -ForceUnsigned
###
### Add additional drivers to the image.
###
###
### Installs the specified WinPE package(s) into the image.
###
Add-WindowsPackage -Path $TempMountPath -PackagePath "C:\Program Files (x86)\Windows Kits\10.0\Assessment and Deployment Kit\Windows Preinstallation Environment\amd64\WinPE_OCs\WinPE-Scripting.cab"
Add-WindowsPackage -Path $TempMountPath -PackagePath "C:\Program Files (x86)\Windows Kits\10.0\Assessment and Deployment Kit\Windows Preinstallation Environment\amd64\WinPE_OCs\WinPE-FMAPI.cab"
Add-WindowsPackage -Path $TempMountPath -PackagePath "C:\Program Files (x86)\Windows Kits\10.0\Assessment and Deployment Kit\Windows Preinstallation Environment\amd64\WinPE_OCs\en-us\WinPE-Scripting_en-us.cab"
Add-WindowsPackage -Path $TempMountPath -PackagePath "C:\Program Files (x86)\Windows Kits\10.0\Assessment and Deployment Kit\Windows Preinstallation Environment\amd64\WinPE_OCs\WinPE-HTA.cab"
Add-WindowsPackage -Path $TempMountPath -PackagePath "C:\Program Files (x86)\Windows Kits\10.0\Assessment and Deployment Kit\Windows Preinstallation Environment\amd64\WinPE_OCs\en-us\WinPE-HTA_en-us.cab"
###
### Add the DaRT tools to the image.
### The New-DartConfiguration cmdlet is used to specify how the DaRT image is configured.
### Modify this statement to configure how the DaRT tools will be applied to the image.
###
$config = New-DartConfiguration -AddComputerManagement -AddCrashAnalyzer -AddDiskCommander -AddExplorer -AddFileRestore -AddFileSearch -AddHotfixUninstall -AddRegistryEditor -AddRemoteConnection -AddSfcScan -AddSolutionWizard -AddTcpConfig -RemoteMessage "Test welcome message" -RemotePort 3388 -ScratchSpace 512
$config | Set-DartImage -Path $TempMountPath
###
### Perform any manual user-specific customizations here.
###
# Read-Host -Prompt "Script is paused for any manual customization. Press ENTER to continue"
### Save the changes to the WIM file by dismounting the image.
Dismount-WindowsImage -Path $TempMountPath -Save
### Create a bootable DaRT ISO.
Export-DartImage -IsoPath $DestinationIsoPath -WimPath $DestinationWimPath
### The following is an example of how to burn the ISO to a writeable CD/DVD.
### Specify the correct drive letter and uncomment the statement to burn an ISO.
# Copy-DartImage -IsoPath $DestinationIsoPath -Drive "G:" -Type DVD
### Removes all temporary files.
Remove-Item $TempMountPath -Force -Recurse