一些 Mac 用户发现 MacOS 中的主机文件似乎不起作用,或者对 Mac 上的 /etc/hosts 文件的更改似乎被忽略了。鉴于 hosts 文件用于将 IP 地址映射到主机名,并且经常被高级用户修改,这是一个可以理解的恼人问题。
当它发生时,这是一个相当明显的问题,因为在 Mac 上从命令行甚至使用 TextEdit 编辑主机文件并刷新 DNS 缓存后,主机似乎没有任何变化。
hosts 文件的更改被忽略,或者对 hosts 文件的编辑不起作用,实际上是相当常见的情况,尤其是对于现代版本的 MacOS 系统软件。幸运的是,这通常也很容易修复。
修复主机文件更改被忽略/主机文件在 MacOS 中不起作用
hosts 文件在 Mac 上不工作的最可能原因是它已损坏,或不再是 ASCII 文件格式。当尝试使用富文本编辑器或第三方应用程序编辑主机文件时,或者在使用 vim/vi/nano 等时保存了错误的文件类型时,有时会发生这种情况。
首先,我们将通过重命名来备份/移动旧的主机文件,这允许您在需要时恢复更改:
sudo mv /etc/hosts /etc/hostsbackup
将 hostsbackup 文件的内容复制到剪贴板,一个简单的方法是使用 cat 然后选择文本并将其复制到剪贴板:
cat /etc/hostsbackup
现在用 nano 创建一个新的主机文件:
sudo nano /etc/hosts
将原始主机文件的内容粘贴到新创建的主机文件中。
点击 Control+o 和 Control+X 保存并退出 nano。
接下来,您可能想要刷新 DNS 缓存以使更改生效。
sudo dscacheutil -flushcache; sudo killall -HUP mDNSResponder
这应该足以让主机更改继续进行,您不需要重新启动任何浏览器或其他连接互联网的应用程序。
注意:一些 Mac 用户报告需要重新启动他们的 Mac 才能识别新的主机文件,这种情况很少见,但可能适用于某些运行 macOS Catalina 或更高版本的 Mac。
在您能够修改主机文件之前,您可能还需要在 Mac OS 中启用 root 帐户,具体取决于您的 macOS 安装情况。
一些用户继续遇到主机文件在 macOS Monterey 和 macOS Ventura 中被忽略的问题,在这种情况下,您还可以使用 GasMask 等第三方应用程序来管理 Mac 上的主机文件,甚至可以使用浏览器扩展来修改hosts 如果您希望在浏览器级别执行此操作。例如,对于 Google Chrome,像 LiveHosts 这样的 Chrome 扩展可以完成这项工作。
您以前在 MacOS 中遇到过主机文件问题吗?上述从命令行创建新主机文件的解决方案是否为您解决了问题?您找到其他解决方案了吗?在评论中与我们分享您的经验!
免责声明
部分内容(图片、文章)翻译/转载自国内外资讯/自媒体平台。文中内容不代表本站立场,如有侵权或其它,请联系 macmao.com@gmail.com,我们会第一时间配合删除。(转载请注明来源自:www.macmao.com)