统一写入筛选器 (UWF) 覆盖位置和大小
统一写入筛选器 (UWF) 通过截获受保护卷的写入尝试来保护卷的内容,并将这些写入尝试重定向到虚拟覆盖。
可以选择覆盖层 (RAM 或磁盘) 的存储位置、保留的空间量以及覆盖填满时会发生什么情况。
若要增加运行时间,请设置监视以检查覆盖层是否填满。 在某些级别,你的设备可以警告用户和/或重新启动设备。
RAM 覆盖与磁盘覆盖
RAM 覆盖 (默认) :虚拟覆盖存储在 RAM 中,并在重新启动后清除。
- 通过写入 RAM,可以减少写入敏感媒体(如固态硬盘)的磨损。
- RAM 通常比驱动器空间更有限。 当驱动器覆盖填满可用 RAM 时,设备性能可能会降低,最终会提示用户重启设备。 如果预期用户对覆盖进行大量大型写入,请考虑改用磁盘覆盖。
磁盘覆盖:虚拟覆盖存储在驱动器上的临时位置。 默认情况下,在重新启动时会清除覆盖层。
- 可以使用 freespace passthrough 在驱动器上使用超出保留虚拟覆盖空间的额外可用空间。
- 在 Windows 10 版本 1803 上,可以使用持久覆盖,以允许用户在虚拟覆盖中保存工作,即使在重新启动后也是如此。
覆盖大小
- 默认值=1024MB。 使用 设置:
规划设备推出时,建议优化覆盖大小以满足需求。
对于 RAM 覆盖,需要为系统预算一些 RAM。 例如,如果 OS 需要 2 GB RAM,并且设备的 RAM 为 4 GB,请将覆盖的最大大小设置为 2048MB, (2 GB) 或更少。
我们建议在测试设备上启用 UWF,安装必要的应用,并使设备通过使用情况模拟。 可以使用此 Powershell 脚本来找出占用空间的文件:
$wmiobject = get-wmiobject -Namespace "root\standardcimv2\embedded" -Class UWF_Overlay
$files = $wmiobject.GetOverlayFiles("c:")
$files.OverlayFiles | select-object -Property FileName,FileSize | export-csv -Path D:\output.csv
使用的覆盖量将取决于:
- 设备使用模式。
- 可以访问的应用。 (某些应用的写入量较高,并且会更快地填满覆盖层。)
- 重置间隔时间。
- 删除文件时,UWF 会将其从覆盖区中删除,并将释放的资源返回到可用池。
警告和关键事件
当驱动器覆盖填满可用空间时,可以警告用户空间不足,并提示他们重新启动设备或运行脚本以清除覆盖。
(可选) 设置警告级别和严重级别。 当覆盖填充到此值时,UWF 将写入 Windows (ETW 的事件跟踪) 消息。
- 警告级别:默认值=512MB。 使用 设置:
- 严重级别:默认值=1024MB。 使用 设置:
请注意,这些设置将在下次重新启动后生效。
使用任务计划程序检测 ETW 消息,并警告用户在设备上完成工作,以便在清除覆盖之前不会丢失内容。 还可以提供脚本链接以清除覆盖的内容。
创建在 系统 日志从 uwfvol 接收事件 ID 时触发的任务:
覆盖使用情况 来源 级别 事件 ID 警告阈值 uwfvol 警告 1 严重阈值 uwfvol 错误 2 恢复正常 uwfvol 信息 3 重新启动设备。
freespace 直通 (建议)
在具有磁盘覆盖层的设备上,可以使用 freespace 直通来访问驱动器的额外可用空间。
你仍需要在磁盘上保留一些空间以用于覆盖。 此空间用于管理覆盖层和存储覆盖,例如系统更新。 所有其他写入将发送到磁盘上的可用空间。 随着时间的推移,保留覆盖层会越来越慢,因为覆盖将不断替换彼此。
在具有 RAM 覆盖的设备上,还可以使用可用空间直通来访问驱动器的额外可用空间,以减少覆盖使用量。 但是,建议不要将自由空间直通与 RAM 覆盖一起使用,因为它不会减少固态硬盘等写入敏感介质上的磨损。
- CMD:uwfmgr 覆盖 set-passthrough (on|off)
持久覆盖
注意
此模式是实验性的,建议在部署到多个设备之前对其进行全面测试。 默认情况下不使用此选项。
在具有磁盘覆盖的设备上,可以选择继续使用覆盖数据,即使在重新启动后也是如此。 如果来宾用户可能需要较长时间访问,并且可能需要在两次使用之间关闭设备电源,这可能很有用。
此选项使 IT 部门可以更好地控制覆盖何时重置。 还可以为用户提供有助于按需重置覆盖层的脚本。
若要打开或关闭持久覆盖,请:
- CMD:uwfmgr overlay set-persistent (on|off)
重置覆盖层:
-
CMD:
uwfmgr overlay reset-persistentstate on
覆盖耗尽
如果覆盖的大小接近或等于最大覆盖大小,则任何写入尝试都将失败,并返回错误,指示没有足够的空间来完成操作。 如果设备上的覆盖层达到此状态,则设备可能会无响应且缓慢,可能需要重启设备。
当 Windows 关闭时,它会尝试将多个文件写入磁盘。 如果覆盖已满,则这些写入尝试会失败,导致 Windows 反复尝试重写文件,直到 UWF 可以确定设备正在尝试关闭并解决问题。 当覆盖已满或接近满时,尝试使用普通方法关闭可能会导致设备需要很长时间(在某些情况下长达一小时或更长时间)才能关闭。
通常可以通过使用 UWF 自动启动关闭或重启来避免此问题:
关闭:
重启:
如果超过覆盖层的最大大小,Windows 10 19H1 及更高版本将自动重启。