在有人将其标记为重复之前,请理解我已尝试了以下所有操作:
- 以管理员身份运行记事本,编辑文件并尝试保存。没有成功。
- 将 hosts 文件复制到另一个文件夹,编辑文件并尝试替换/覆盖原始文件。没有成功。
- 取消选中文件属性中的只读选项。没有设置,所以没用。
- 在 SysInternals Process Explorer 中查看正在使用该文件的内容。这是我看到的。看起来并没有什么不寻常的。如果您不同意,请回复。
- 使用文件属性的“安全”选项卡获取 hosts 文件的所有权。但没成功。
- 使用文件夹属性的“安全”选项卡获取包含 hosts 文件的 etc 文件夹的所有权。没有运气。
- 尝试使用 Notepad++ 的管理模式保存文件。没有成功。
还有其他想法吗?
答案1
事实证明,我跳过了一个建议,因为我认为它没有价值。我错了……
@Ramhound 给了我所需的线索邮政他提供了。
该帖子中的一个解决方案建议运行 Process Explorer作为管理员然后搜索 hosts 文件。我一搜索就看到了这个:
请注意我原来的屏幕截图中没有的 WRSA.exe 进程。这是 Webroot 用手紧紧抓住 hosts 文件。
继续阅读该解决方案后,很明显 Webroot 是罪魁祸首。
我打开了 Webroot 并搜索了提到的设置。以下是我发现的内容:
取消选中该框后,我能够在提升的 notepad++ 会话中保存我的 hosts 文件。
关键就在这里。Windows Home 和 Windows Professional 上 Webroot 的实现存在差异。
我习惯在 Windows Professional 上工作。在 Windows Professional 上,在提升的 notepad/notepad++ 会话中保存 hosts 文件没有问题。
但是,如果您在 Windows Home 上使用 Webroot,则似乎必须取消选中此框才能保存对 hosts 文件的更改。