WindowsToGo

HOWTO: 手动创建 Windows To Go

        Windows To Go 有些朋友应该并不陌生,它早先是内置在 Windows 中的一项功能,允许在 U盘上创建一个 Windows 运行实例,当然肯定是有诸多前提条件和限制的,而且因为无法支持功能更新,所以在 Windows 10  的 2004 及更高版本中删除了 Windows To Go。那为什么 gOxiA 今天又来分享它呢!?原因很简单,假如我想在当前一个设备上临时跑个操作系统(Windows Server),但设备的存储空间有限,并且也不希望对现有系统环境,如引导信息做任何更改,该怎么办?

        这时 Windows To Go(以下简称 WTG)就发挥了它的优势,手头正好有个 SSD 的移动硬盘,基于 UEFI 方案创建了磁盘分区,本例只创建了 EFI (S:)、MSR 和 Windows (W:) 分区,与我们平常的系统盘是一样的。

        然后将 Windows 安装盘中的 Install.wim 释放到 Windows 分区,具体步骤不再复述,使用 DISM 高效快捷。

        映像释放完毕,使用 bcdboot 生成 BCD 即可,如下所示:

c:\windowssystem32bcdboot w:\windows /s s:

        看到这里是不是觉得很简单,这不跟手动安装 Windows 一样?!没错,就是这么简单,但要想工作正常还需要做额外的准备,使用 Windows ADK 中的 WSIM 创建一个应答文件,对如下组件进行配置:

1. 将 Microsoft-Windows-PartitionManager 下的 SanPolicy 配置为 4,这样在 WTG 启动和运行时就不会加载设备本机的存储。有关 SanPolicy 的详细说明可以参考:https://docs.microsoft.com/zh-cn/windows-hardware/customize/desktop/unattend/microsoft-windows-partitionmanager-sanpolicy

image

2. 将 Microsoft-Windows-WinRE-RecoveryAgent 下的 UninstallWindows 配置为 true,这样将会从已安装的实例中删除 WinRE。

image

        两项组件配置完毕后可将应答文件(Unattend.xml)保存到“W:\Windows\Panther”下,然后实行如下命令将应答文件应用到脱机实例。

dism /image:w:\ /apply-unattend:w:\windows\panther\unattend.xml

        为了确保 WTG 能正常驱动硬件设备,还请考虑使用 DISM 的 /Add-Dirver 参数提前将驱动注入到脱机实例中,最后将 WTG U盘连接到目标设备,从 U盘启动即可完成后续的初始化,直至系统进入正常使用状态。整个过程大家会注意到没有使用任何第三方工具,所以不论从便捷性还是安全性都有保障。如果你当前也遇到类似的使用场景不妨一试!

        官方的最佳实践建议:

  • 始终关闭 Windows 并等待关机完成,然后再移除 WTG U盘。
  • 不要将 WTG U盘插入正在运行的计算机。
  • 不用通过 USB Hub 连接 WTG U盘,应直接与设备端口连接。
  • 使用 USB 3.0 端口。
  • 不要在 WTG 实例中安装非 Microsoft 核心 USB 驱动。

        本文结束前友情提示,如果你打算将 WTG 运行在 BIOS 和 UEFI 两种类型的设备上,需要在执行 bcdboot 生成 BCD 时附加“ /f ALL”参数,这样会生成两组启动组件,该模式支持的磁盘布局如下:

image

troubleshooting

HOWTO: 解决 Windows 启动时发生 0xC0000428 故障问题

        当企业 IT 人员为标准化映像注入了驱动,或通过部署平台在安装过程中动态注入驱动后,设备首次初始化(Specialized phase)时可能会遇到 0xC0000428 的故障问题,如下图所示:

0xc0000428

        从提示来看,是在加载某个驱动程序时发生了异常,报出了 0xC0000428 的 error code。看描述是说文件的数字签名依赖关系无法验证。查了一下代码可确认与签名证书有关!

0xc0000428_errorcode

        由于无法进入安全模式,便无法从系统 UI 下卸载此驱动,此外也想验证一下是否还有其他驱动存在文件,唯一的办法是脱机对当前实例执行离线的驱动维护。具体办法如下:

        找一个 PE 引导设备进入脱机环境,然后使用 DISM 获取当前实例的驱动存储列表,参考命令如下:

dism /image:c:  /get-drivers

        如果驱动较多可以加载“| more”,或直接“> drivers.txt”导出用记事本查阅。当找到报错的驱动程序后,确定其“已发布的名称”,类似“OEM.inf”命令方式。

        然后,执行下面的命令,将驱动从实例中删除。

dism /image:c:\ /remove-driver /dirver:oem.inf

        最后,退出 PE 重启设备测试是否可以正常初始化。

        有关 DISM 维护驱动程序的官方文档可参考:https://docs.microsoft.com/en-us/windows-hardware/manufacture/desktop/dism-driver-servicing-command-line-options-s14?view=windows-11


microsoft365_logo

WinLogo

image

Microsoft Edge 云站点列表管理 IEMode

        早前 gOxiA 发布了一篇日志介绍了“企业和单机环境利用 Microsoft Edge 的 IEMode 解决网站访问兼容性问题”,如果你当前所在的企业已经在使用 M365,那么还可以云站点列表管理 IEMode,可以在 Microsoft 365 Admin Portal Settings 下的 Org settings 中找到,如下图所示:

image

        利用此功能企业 IT 可以将 IEMode Site List 托管在 M365 中,当用户使用自己的 M365 账号登录到 Microsoft Edge 时就能够应用这个列表。如果要将企业站点列表发布到云,需要在上述设置页面中新建列表,如下图所示:

image

        之后,就可以全新添加或导入已有的 IEMode List,如下图所示:

image

image

        向 IEMode List 添加网站后并不会立刻生效,需要管理员执行发布,可以单独对网站进行发布,也可对整个 List 发布,发布之后我们会看到状态。

image

        对站点列表内容进行更新后,默认刷新间隔是2小时,我们也可以修改 Edge 的策略 - InternetExplorerIntegrationSiteListRefreshInterval,其最小的刷新间隔是 30分钟。

        站点列表发布后,我们还需要将云托管的站点列表与 Microsoft Edge 关联,可以使用策略中的 InternetExplorerIntegrationCloudSiteList 进行配置,如果企业已经在使用 Intune 管理客户端,IT 人员还可以创建一个基于“管理模板”的设备配置文件,在“计算机配置”中搜索“云”就可以找到“配置企业模式云站点列表”。还记得前一张创建 IEMode List 的示例图吗?!里面有个 Site list ID,将其复制到数据框中,点击确定完成,随后分配给特定的组或用户。

image

        要在客户端 Edge 上验证已经获取到的 IEMode List,可以在 Edge 地址栏访问“edge://compat/enterprise”进行查看。如需了解更多,还请浏览微软官方文档“云站点列表管理 IEMode”。

分页: 2/138 第一页 上页 1 2 3 4 5 6 7 8 9 10 下页 最后页 [ 显示模式: 摘要 | 列表 ]