无法保存 hosts 文件是因系统限制写入权限,可通过五种方法解决:一、以管理员身份运行记事本编辑;二、手动赋予用户完全控制权限;三、复制到桌面编辑后覆盖;四、用TAKEOWN和ICACLS重置所有权与权限;五、取消只读属性并调整安全权限。

如果您在 Windows 10 系统中尝试修改 hosts 文件但无法保存,则可能是由于系统默认限制对 C:\Windows\System32\drivers\etc\ 目录下 hosts 文件的写入权限。以下是多种可立即执行的解决方法:
一、以管理员身份运行记事本并直接编辑
此方法绕过用户账户控制(UAC)对系统目录的写入拦截,利用提升后的进程权限完成编辑与保存操作。
1、右键点击“开始”按钮,选择“记事本”并点击“以管理员身份运行”。
2、在记事本中点击“文件” > “打开”,在文件名输入框中粘贴路径:C:\Windows\System32\drivers\etc\,按回车。
3、在“文件类型”下拉菜单中选择“所有文件”,找到无扩展名的 hosts 文件并双击打开。
4、在文件末尾添加所需映射条目,格式为:127.0.0.1 example.com(IP 与域名间用至少一个空格分隔)。
5、点击“文件” > “保存”,关闭记事本。
二、手动赋予当前用户对 hosts 文件的完全控制权限
该方法通过修改 NTFS 安全描述符,将当前登录用户的“完全控制”权限写入 hosts 文件属性,使其后续任意编辑均可保存。
1、打开文件资源管理器,在地址栏输入:C:\Windows\System32\drivers\etc,按回车进入目录。
2、右键单击 hosts 文件,选择“属性”。
3、切换到“安全”选项卡,点击“高级”按钮。
4、在“高级安全设置”窗口中,点击左下方“更改权限”按钮。
5、点击“添加”,再点击下方“选择主体”。
6、点击“高级”,再点击“立即查找”,在结果列表中选中当前登录用户名(如 YourPC\UserName),点击“确定”。
7、返回权限项目窗口,在“允许”列中勾选“完全控制”,点击“确定”。
8、连续点击“确定”关闭所有对话框;当系统弹出安全警告提示时,点击“是”确认。
三、使用命令提示符复制-编辑-覆盖方式
此方法避开直接写入受保护目录的限制,先将 hosts 文件复制至桌面等用户可写路径进行编辑,再以管理员权限覆盖原文件。
1、按 Win + X,选择“Windows PowerShell(管理员)”或“命令提示符(管理员)”。
2、执行复制命令:copy C:\Windows\System32\drivers\etc\hosts C:\Users\Public\Desktop\hosts。
3、在桌面打开刚复制的 hosts 文件,用记事本编辑并保存修改。
4、回到管理员命令行,执行覆盖命令:copy /Y C:\Users\Public\Desktop\hosts C:\Windows\System32\drivers\etc\hosts,按 Y 确认。
四、通过 TAKEOWN 和 ICACLS 命令重置所有权与权限
该方法适用于 hosts 文件所有权被意外更改为 SYSTEM 或 TrustedInstaller 的深度权限异常场景,强制恢复当前用户控制权。
1、以管理员身份运行命令提示符。
2、执行所有权获取命令:TAKEOWN /F %windir%\System32\drivers\etc\hosts。
3、执行权限赋权命令:ICACLS %windir%\System32\drivers\etc\hosts /grant %username%:F。
4、命令执行成功后,即可用普通记事本(无需管理员身份)打开并保存 hosts 文件。
五、临时取消 hosts 文件只读属性并配合权限调整
部分系统会错误地将 hosts 文件标记为只读,即使权限正确也无法保存;需同步清除只读标志并确保写入权限启用。
1、进入 C:\Windows\System32\drivers\etc 目录,右键 hosts 文件选择“属性”。
2、在“常规”选项卡中,**取消勾选“只读”复选框**,点击“应用”。
3、切换到“安全”选项卡,点击“编辑”,选中当前用户,勾选“写入”和“修改”权限,点击“确定”。
4、再次点击“确定”关闭属性窗口,系统提示时点击“是”。











