搞砸主机?如何在 Mac OS X 中恢复原始默认 /etc/hosts 文件
hosts 文件包含在每台计算机上,Mac OS 使用它来将 IP 地址映射到主机名。因为用户可能会选择调整、更改或以其他方式编辑主机文件以用于各种原因,它很容易受到用户错误的影响,导致各种不良的网络问题,包括无法访问网络位置、网络故障、网站 被阻止 或无法加载,甚至无法加载 iOS 更新和各种 iTunes 错误,例如经常遇到的 17 和 3194 错误,因为 Apple服务器已被封锁。
幸运的是,将原始默认 /etc/hosts 文件恢复到正常状态非常容易,恢复原始未更改默认文件的最佳方法是简单地用新的干净版本覆盖现有损坏的主机文件Mac OS X 中默认设置的副本。为方便起见,下面包含了一个示例,但如果需要,您也可以从另一台 Mac 检索它。以下版本不包含任何额外的条目或修改,它是 OS X Mavericks 中的直接副本,如果您在更改或调整期间不小心弄乱了重要的主机文档,可以安全地返回。
您需要复制以下文本并将其粘贴到一个纯文本 文件中,该文件存储在 /etc/hosts 路径中。如果您不确定如何操作,可以按照这些说明学习如何编辑文件 从命令行以正确的方式简单地用下面的主机块覆盖它,或者使用 TextEdit 并保存混乱的版本,这就是我们将在下面介绍的内容。
Mac OS X 中的默认和原始 /etc/hosts 文件如下所示
代码块中包含原始主机文件和四个默认条目。只需将其复制并粘贴到现有的主机文件上,然后将其另存为纯文本即可恢复。
##
##
#主机数据库
#
#localhost用于配置环回接口
#系统启动时。不要更改此条目。
##
127.0.0.1 localhost
255.255.255.255 broadcasthost
::1 localhost
fe80::1%lo0 localhost
熟悉命令行的人应该对此没有问题,但如果您不太确定该怎么做,您也可以从 TextEdit 应用程序完成该过程,我们将在下面进行描述:
将未修改的原始主机文件恢复到 Mac OS X
TextEdit 是每台 Mac 捆绑的简单文本编辑器,您还需要管理员权限才能完成此任务,因为主机文档是受限目录中的系统文件。
- 打开 TextEdit 并将上面的代码块粘贴到一个新的空白文件中
- 选择所有文本,然后选择“格式 > 制作纯文本”,然后单击“确定”
- 选择“文件 > 另存为”并取消选中“如果未提供扩展名,请使用 txt”复选框——这很重要,请勿包含文件扩展名
- 按 Command+Shift+G 调出“转到文件夹”窗口,现在输入 /etc/ 并转到
- 将文件命名为“hosts”并保存,您需要输入管理员密码才能写入此目录
现在要确认主机文件已正确保存,请转到终端应用程序并键入以下内容:
cat /etc/hosts
该命令应报告文件如下所示:
如果它看起来不像上面的示例主机文件,那么您做错了什么。最常见的问题通常是未将文件保存为纯文本、不小心添加了文件扩展名或命名不正确,因此请仔细检查。如果您仍然遇到问题,则可能是您没有正确覆盖文件。
您可能想要刷新 DNS 缓存 或者只是重新启动 Mac 以使更改在系统范围内生效并恢复主机文件。
这确实是恢复主机文件的最简单方法,如果您弄乱了主机文件,如果它因大量条目而变得过于混乱,或者以其他方式导致主机数据库完全无法使用。您当然不需要从 Time Machine 备份恢复整个 Mac 或重新安装操作系统来完成此操作。