![Windows 7 - 用户配置文件服务正在删除登录时的本地配置文件。不是来宾,是多台机器](https://linux22.com/image/711196/Windows%207%20-%20%E7%94%A8%E6%88%B7%E9%85%8D%E7%BD%AE%E6%96%87%E4%BB%B6%E6%9C%8D%E5%8A%A1%E6%AD%A3%E5%9C%A8%E5%88%A0%E9%99%A4%E7%99%BB%E5%BD%95%E6%97%B6%E7%9A%84%E6%9C%AC%E5%9C%B0%E9%85%8D%E7%BD%AE%E6%96%87%E4%BB%B6%E3%80%82%E4%B8%8D%E6%98%AF%E6%9D%A5%E5%AE%BE%EF%BC%8C%E6%98%AF%E5%A4%9A%E5%8F%B0%E6%9C%BA%E5%99%A8.png)
我是一家学校肖像公司的 IT 管理员。
我们在现场部署了数十台笔记本电脑来支持各种应用程序和服务,今天我们遇到了一个问题,即 Windows 试图删除我们的操作员使用的用户配置文件。
我熟悉可能导致这种情况发生的情况,并且快速的谷歌搜索再次确认这些问题仍然存在于 Win7 中,但这些问题并不适用,我想快速列出它们,以便这个线程上的响应与我的实际问题无关且准确。
1.) 如果您是 Guest 或 Domain Guest 用户组的成员,Windows 将删除您的配置文件。我们的机器上不会发生这种情况,并且已通过检查 LUserMgr.msc 和 RegEdit 中的 SID.bak 得到确认
2.) 如果您属于太多组并且 Kerberos 令牌超载,Windows 偶尔会删除您的配置文件。这种情况不会发生,因为只有 2 个组。
3.) 如果您无法从域中应用漫游配置文件,如果您离开并重新加入域,或者更改了用户名,Windows 将加载临时配置文件。事实并非如此。我们仅使用本地配置文件,并且明确使用。本地配置文件没有到期日期。我们没有离开并重新加入域。我们没有更改帐户的名称或密码,也没有被锁定。此外,这些用户帐户设置为密码永不过期,并阻止用户更改密码。
4.) 如果您的配置文件已损坏,Windows 将无法加载您的配置文件并尝试加载临时配置文件。对您的 HDD 运行 ChkDsk 或对您的 RAM 运行 MemTest。我不太相信这是事实,但不会排除这种可能。我犹豫不决的原因有两个,我将其称为 4A 和 4B。
4A.) 我们部署了一个名为 DeepFreeze 的硬盘稳定状态解决方案。我相信你们很多人都听说过它。类似的产品有 Windows SteadyState 或 CompuGuard CornerStone。本质上,计算机处于冻结状态,一旦启动,操作员就可以对该状态进行虚拟更改,这些更改似乎在会话期间有效,但实际上不会对硬盘进行任何更改,只有虚拟磁盘。重新启动 PC 后,所有操作都会撤消,并且每次机器启动时都会加载相同的库存系统映像。因此,如果用户配置文件服务上的特定文件或资源被损坏,包括故意删除整个配置文件或 NTUser.dat 等,重新启动计算机 100% 会将这些文件恢复到其工作状态,并且可以恢复操作。
4B.) 我们有许多机器(大约十几台)同时出现此问题。10 台机器的硬盘不可能在同一天同一时间全部损坏或崩溃。我怀疑如果我们有漫游配置文件并且源配置文件出现问题,这种情况就可能发生,但同样,这些机器中的每一台都使用本地配置文件,而不是漫游配置文件。它们也是单独成像的 - 我们没有使用 sysprep 或克隆软件将标准映像部署到所有机器,而是单独设置它们并且彼此独立,并且每个都有自己的 SID、令牌缓存、许可证密钥等。
到目前为止我注意到的是:
我们没有收到提示无法加载用户配置文件的弹出窗口,而是加载了一个临时配置文件。我以前在遇到漫游配置文件问题时也遇到过这种情况,但加载临时帐户时,Windows 根本没有出现任何错误或弹出窗口。在 EventVwr 中,几个警报表明删除配置文件时出现问题,因为文件仍在使用中。好的,但为什么 Windows 会尝试删除配置文件呢?
一旦成功部署新配置文件并登录,配置文件名称将与旧配置文件名称相同,但附加了 .%MACHINENAME%。因此,用户 PC1\Staff 通常会登录并在 C:\Users\Staff 中查看他们的文件,现在发生的事情是经过身份验证后,它显示“准备您的桌面”,它提供默认桌面、图标、固定的任务栏图标,并将许多东西移入回收站。加载 C:\Users 会显示 C:\Users\Staff 为空,没有任何文件或文件夹,还有一个额外的文件夹,即主动加载的配置文件,名为 C:\Users\Staff.PC1。里面是桌面、文档等所有常见的配置文件文件夹。但配置文件中原来的文件都没有被移动,这实际上只是 DefaultUser 的直接副本。
当我们运行 CMD 并输入“Echo %UserProfile%”时,它返回 C:\Users\Staff.PC1。
出现问题的计算机并非全部都处于类似的条件下——到目前为止出现问题的 12 台机器都来自不同的工作现场,位于不同的位置,有些有互联网,有些没有。
禁用对域控制器的访问没有效果。我注意到一些其他问题,例如无法加载组策略等,并认为域服务器在传递登录相关资源时出现故障,即使它是一个本地帐户,它们仍加入域并可能正在尝试与其交互。所以我关闭了无线网络,重新启动了笔记本电脑(未插入以太网),这样它们实际上就无法访问网络,也无法看到域控制器。再次重新启动应该可以将损坏的用户配置文件恢复到正常状态,当我们启动时,它仍然会思考一分钟(比以前更长),但最终会继续加载临时配置文件并删除常用配置文件。
C:\Users\Staff 和 C:\Users\Staff.PC 的最后修改日期都是计算机登录的确切时间。这告诉我登录服务本身负责删除该帐户,而不是由最终用户删除的。
我有点害怕解冻机器并重新配置新帐户。我们会丢失旧机器上的所有内容吗?我们会一直使用 .PC1 %machinename% 后缀吗?我们使用的应用程序通常直接指向 C:\Users\Staff\AppData(而不是正确的 C:\Users\%username%\AppData),但无法找到这些文件。
未受影响的机器仍可正常登录。加载正确的壁纸、文件等,并在与受影响设备并排的环境中,可以重新启动并继续正常运行。
如果我以域管理员身份登录,使用 DomainName\AdminUserName 而不是 PC1\Staff,然后继续转到 C:\Users,我仍然会看到 C:\Users\Staff 在我登录时已被删除。因此,登录到其他帐户仍会删除 Staff 帐户,即使它是一个不相关的用户。
我应该从哪里开始排除故障?有什么想法可以解决这里发生的问题吗?