powershell - Mount-WindowsImage 问题
问题描述
我决定将我的 USB 启动媒体重写为 PowerShell 脚本。安装时我使用以下
Mount-WindowsImage -ImagePath X:\DEV.wim -Index 1 -Path "C:\windows"
.WIM 位于启动 USB 上的单独分区上。调用时,PowerShell 看不到该分区。我猜是因为我没有在那个磁盘上“工作”。
有没有办法告诉该命令将 .wim 从单独的分区挂载到我正在处理的磁盘上?
例子:
Mount-WindowsImage -DiskNumber 0 -ImagePath I:\DEV.wim -Index 1 -DiskNumber 1 -Path "C:\windows"
解决方案
要在 WinPE 启动媒体中添加 powershell 支持,您需要附加一些.cab
文件。
首先,您需要挂载您的 wim 并将一些包添加到您的boot.wim
文件中。
对于 x64 位,可选组件的位置如下。
C:\Program Files (x86)\Windows Kits\10\Assessment and Deployment Kit\Windows Preinstallation Environment\amd64\WinPE\_OCs\
32 位可选组件位于此处:
C:\Program Files (x86)\Windows Kits\10\Assessment and Deployment Kit\Windows Preinstallation Environment\x86\WinPE\_OCs\
您可以运行此脚本来添加在 WinPE 中使用 powershell 所需的包。
Dism /Mount-Image /ImageFile:"C:\Path\to\image\boot.wim" /Index:1 /MountDir:"C:\mount\path"
Dism /Add-Package /Image:"C:\WinPE_amd64_PS\mount" /PackagePath:"C:\Program Files (x86)\Windows Kits\10\Assessment and Deployment Kit\Windows Preinstallation Environment\amd64\WinPE_OCs\WinPE-WMI.cab"
Dism /Add-Package /Image:"C:\WinPE_amd64_PS\mount" /PackagePath:"C:\Program Files (x86)\Windows Kits\10\Assessment and Deployment Kit\Windows Preinstallation Environment\amd64\WinPE_OCs\en-us\WinPE-WMI_en-us.cab"
Dism /Add-Package /Image:"C:\WinPE_amd64_PS\mount" /PackagePath:"C:\Program Files (x86)\Windows Kits\10\Assessment and Deployment Kit\Windows Preinstallation Environment\amd64\WinPE_OCs\WinPE-NetFX.cab"
Dism /Add-Package /Image:"C:\WinPE_amd64_PS\mount" /PackagePath:"C:\Program Files (x86)\Windows Kits\10\Assessment and Deployment Kit\Windows Preinstallation Environment\amd64\WinPE_OCs\en-us\WinPE-NetFX_en-us.cab"
Dism /Add-Package /Image:"C:\WinPE_amd64_PS\mount" /PackagePath:"C:\Program Files (x86)\Windows Kits\10\Assessment and Deployment Kit\Windows Preinstallation Environment\amd64\WinPE_OCs\WinPE-Scripting.cab"
Dism /Add-Package /Image:"C:\WinPE_amd64_PS\mount" /PackagePath:"C:\Program Files (x86)\Windows Kits\10\Assessment and Deployment Kit\Windows Preinstallation Environment\amd64\WinPE_OCs\en-us\WinPE-Scripting_en-us.cab"
Dism /Add-Package /Image:"C:\WinPE_amd64_PS\mount" /PackagePath:"C:\Program Files (x86)\Windows Kits\10\Assessment and Deployment Kit\Windows Preinstallation Environment\amd64\WinPE_OCs\WinPE-PowerShell.cab"
Dism /Add-Package /Image:"C:\WinPE_amd64_PS\mount" /PackagePath:"C:\Program Files (x86)\Windows Kits\10\Assessment and Deployment Kit\Windows Preinstallation Environment\amd64\WinPE_OCs\en-us\WinPE-PowerShell_en-us.cab"
Dism /Add-Package /Image:"C:\WinPE_amd64_PS\mount" /PackagePath:"C:\Program Files (x86)\Windows Kits\10\Assessment and Deployment Kit\Windows Preinstallation Environment\amd64\WinPE_OCs\WinPE-StorageWMI.cab"
Dism /Add-Package /Image:"C:\WinPE_amd64_PS\mount" /PackagePath:"C:\Program Files (x86)\Windows Kits\10\Assessment and Deployment Kit\Windows Preinstallation Environment\amd64\WinPE_OCs\en-us\WinPE-StorageWMI_en-us.cab"
Dism /Add-Package /Image:"C:\WinPE_amd64_PS\mount" /PackagePath:"C:\Program Files (x86)\Windows Kits\10\Assessment and Deployment Kit\Windows Preinstallation Environment\amd64\WinPE_OCs\WinPE-DismCmdlets.cab"
Dism /Add-Package /Image:"C:\WinPE_amd64_PS\mount" /PackagePath:"C:\Program Files (x86)\Windows Kits\10\Assessment and Deployment Kit\Windows Preinstallation Environment\amd64\WinPE_OCs\en-us\WinPE-DismCmdlets_en-us.cab"
Dism /Unmount-Image /MountDir:C:\mount\path /Commit
然后你需要重新创建你的启动媒体:
MakeWinPEMedia /UFD C:\WinPE_amd64_PS <USBDriveLetter>:
推荐阅读
- express - 使用 min 函数的 Joi 验证问题
- javascript - 捕获正则表达式模式不适用于多行字符串
- cloud - 无法检索列表存储桶:调用 ListBuckets 操作时发生错误 (AccessDenied):Access Denied IBM COS from Watson Studio
- python - 是否有任何包用于在 Azure 中使用 python 编程将 doc 文件转换为 docx 格式?
- opencv - 与 plt.show 一起使用时,cv2.imshow 不起作用
- swift - 了解使用无符号位板生成滑动块移动的“o^(o-2r)”公式?
- excel - Excel数据验证中的嵌套ifs
- llvm - 移除不可移除的 llvm 指令
- python - “teamview”对象没有属性“get_object”
- java - 在 Spring Security 中获取用户角色的最佳方式