troubleshooting

HOWTO: 解决 Windows 运行态下 Capture OSImage 过慢问题

        当我们在 Windows 运行态下挂载一个 VHDX 文件,并希望将其捕获为一个 WIM 映像文件时可能会发生进度停滞的问题,此时如果打开任务管理器查看磁盘状态会看到磁盘处于读状态,大概每秒几十兆左右,而写入速度几乎为零,或只有几百字节或几兆字节,最高也就几十兆。

        查看保存 WIM 的目录发现该文件已经生成,但容量仍为零字节。使用资源监视器筛选 DISM 进程,可见正在处理任务,切换至磁盘活动选项卡,并未有实际的读写操作,如果此时按照读写频率进行排列时会发现进程 MsMpEng.exe 正在运行并产生了大量的读操作。说明 Windows Defender 正在后台扫描文件。

        据此,原因找到!如果要捕获的卷数据是可信赖的,尤其对于桌面标准化编制人员来说,挂载操作 WIM 文件是常见的工作,通常会将 WIM 文件做例外,但挂载 WIM 到目录后将遵循 Windows Defender 的扫描策略,此时可以考虑在合规安全按的前提下暂时关闭 Defender。

        但当准备临时关闭 Defender 时却发现实时保护无法关闭,且正受到“防篡改保护”(Tamper Protection),如下图所示。这通常是因为企业 IT 人员下发了安全策略。

image

        如果继续等待恐怕捕获映像的效率会大大降低,如果单独再搭建 Hyper-V 虚机环境来操作又太过繁琐,当然这是推荐的方案!但也可以考虑其他临时对策,虽然防篡改保护禁止关闭 Windows Defender 的实时保护功能,但安全策略可能未限制用户使用“排除项”,为此可打开“病毒和威胁防护”,找到“病毒和威胁防护设置”,点击“管理设置”,就可以看到“排除项”下的“添加或删除排除项”,然后添加要捕获的卷的盘符号即可,如:"E:\"。当完成映像捕获后,再删除该排除项即可。

image

troubleshooting

Windows 安全启动的最低服务需求

        当我们在对 Windows 故障进行排错时通常会使用系统内置的 msconfig 命令执行诊断启动,也就是我们常说的干净启动。在此启动模式下,仅会加载基本的设备和服务,通常可以确保系统能够正常启动进入桌面执行基本任务,便可针对系统缓慢、系统冻结等问题进行排错。

cleanboot

        如果诊断启动仍未让系统正常运行,我们还会通过高级启动选项,将系统引导启动至安全模式或带有网络连接的安全模式。自 Windows 10 开始要进入安装模式除了通过 shutdown -o,或者shift + 重启,或者通过 Windows 设置中恢复选项下提供的“高级启动”以外,还可以通过在设备加电启动后长按电源键执行两次强制关机来实现高级启动。这样我们便有机会在无法正常操作系统的前提下进入 Windows 安全模式。在某些极端的情况下,我们可能需要借助 Windows PE 加载脱机系统的注册表对服务进行修改,使其满足安全启动的需求,为此提供以下颇有历史的列表供大家参考:

1. 安全模式

•Cryptographic Services

•Event Log

•Help and Support

•Logical Disk Manager Administrative Service

•Net Logon

•Plug and Play

•Remote Procedure Call (RPC)

•Windows Management Instrumentation

2. 带有网络连接的安全模式

•AFD Networking Support Environment

•Computer Browser

•DHCP Client

•DNS Client

•Event Log

•Help and Support

•Logical Disk Manager

•NetBIOS Interface

•NetBios over Tcpip

•Net Logon

•Network Connections

•Plug and Play

•Remote Procedure Call (RPC)

•Server

•TCP/IP NetBIOS Helper

•TCP/IP Protocol Driver

•Terminal Services

•Windows Management Instrumentation

•Workstation

        对于现代操作系统 Windows 11,我们可以进入安全模式检索启动的服务,检索的工具可以是 Services.msc 服务管理器,当然也可以动用一些命令,会更容易生成所需的列表信息,或直接进行排错。

win11_safeboot_services

        使用 sc query type=service 便可在 cmd 环境下检索当前正在运行的服务,它们便是 Windows 当前版本在安全模式下所需的服务;如果使用driver类型,则会显示安全模式下活动的驱动。对于排错是不是很妙。

        如果希望将当前在运行的服务列表直观的显示出来并用于保存,恐怕用 PowerShell 是更方便的。如:

Get-Service | Where-object {$_.status -eq "running"}

win11_safeboot_services_ps

        末尾感叹一下,自带进入 Windows 10 时代,好像就很少几率在用到安全模式,因为系统已经变得非常稳定、安全!不是吗?!

Windows_logo_horiz_blue_rgb

HOWTO: 使用 Intune CSP 禁用 OOBE 阶段的首次登录动画

        当我们在准备批量自动化部署 Windows 前都会制作参考映像,并对其进行定制,以及预置一些应用程序,或加载一些自动化配置。但在实际部署时会发现 Windows OOBE 的自动化配置过程是实现了,但在“首次运行动画”这个阶段等待了漫长的时间,曾有网友遇到该时间长达近半个小时。

image

        那么我们是否有办法加快或禁用这段动画吗?对于传统部署模式,虽然在 Windows 应答文件中没有预设的配置选项,但是可以通过组策略或脚本进行配置。

1. 组策略,定位到“计算机配置-管理模板-系统-登录”,禁用“显示首次登录动画”。

gpo_showfirstanimation

gpo_showfirstanimation-1

2. 如果需要在 Windows 应答文件中实现,则需要添加执行脚本,参考如下:

<RunSynchronousCommand wcm:action="add">

    <Description>disable FirstLogonAnimation</Description>

    <Order>1</Order>

    <Path>reg add HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Policies\System /v EnableFirstLogonAnimation /d 0 /t REG_DWORD /f</Path>

</RunSynchronousCommand>

<RunSynchronousCommand wcm:action="add">

<Description>disable animation</Description>

<Order>2</Order>

<Path>reg add HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Policies\System /v DelayedDesktopSwitchTimeout /d 0 /t REG_DWORD /f</Path>

</RunSynchronousCommand>

        如果正在使用现代部署模式,如 Intune 这类的 MDM 平台,则可以直接使用 CSP 进行预配。

范围:Device

版本:Pro、Ent、Edu、SE

系统:1903及以上

./Device/Vendor/MSFT/Policy/Config/WindowsLogon/EnableFirstLogonAnimation

格式:int

值:0 -> Disabled

参考信息:

https://learn.microsoft.com/en-us/windows/client-management/mdm/policy-csp-windowslogon#enablefirstlogonanimation

分页: 16/470 第一页 上页 11 12 13 14 15 16 17 18 19 20 下页 最后页 [ 显示模式: 摘要 | 列表 ]