一名刚刚使用 Mac OS X Lion 系统的朋友问我怎么该系统下修改 Hosts 文件,说网上搜了很多办法都不管用,只要编辑 Hosts 文件就出现”你不是文件 hosts 的所有者,因此没有权限写到该文件”的提示,要解决这个权限问题又比较麻烦,对于刚刚使用 Mac 的用户来说并不容易整明白。因此,就有了这篇小贴士,下面我分享四种方法来修改 Mac OS X Lion 系统中的 Hosts 文件,这四种方法都不会出现权限提示,而且 Mac OS X Snow Leopard(10.6) 用户也完全可以使用这些方法。
打开终端(应用程序——实用工具),运行:
sudo vi /etc/hosts
屏幕上会提示你输入密码(输入密码的时候不会有任何字符显示,甚至*都不会显示,输完之后按回车就是了),打开 hosts 文件之后按 i 键进入插入模式(可理解为编辑模式),然后按照你的需要对该文件进行编辑,编辑完成之后按 ESC 键退出插入模式,之后按 :wq+回车保存退出,记得英文的冒号也是要输入的哦。
这是笔者一直都在使用的方法,VI 编辑器对于经常使用 Linux 的用户应该不会陌生,而且该编辑器是默认内置在 Mac 系统中的。但是,对于没有使用过 VI 的用户,还真得花一会儿功夫来学习其基本使用方法。另外VI编辑器是一个很好很强大的工具,想要玩好 Mac 的话,最好掌握这个工具的使用。
和上面的方法类似,这个编辑器相比 vi 更加简单易用,但是功能不强大,似乎也没有 vi 流行。方法同样是在终端中运行:
sudo nano /etc/hosts
同样是输入密码,打开 hosts 文件,按照你的需要对该文件进行编辑,编辑完毕之后按 ctrl+o 保存,出现 File Name to Write: /etc/hosts 的时候按回车确认,再按 ctrl+x 退出即可。
这个方法比较适合当你想往 Hosts 文件中添加一些内容的情况,首先你需要把需要添加到 Hosts 文件中的内容保存为一个TXT文本文件(建议直接保存在你的用户目录),我这里拿保存在用户目录中的123.txt为例说明。
同样是启动终端,然后运行下面两条命令:
sudo -s
cat ~/123.txt>>/etc/hosts
顺便说一下,~ 符号在 Mac 甚至所有基于 Unix 和 Linux 的系统中都是代表当前用户的用户目录,.代表当前目录,这回你就应该明白上面的命令中为什么是 ~/123.txt 了吧。
打开 Finder,然后点击菜单栏中的 前往——前往文件夹(或者快捷键 Shift+Command+G),在路径中输入 /private,进入之后在 etc 文件夹上点击右键——显示简介,在文件夹简介窗口的最下面找到“共享与权限”,将 everyone 的权限修改为“读与写”,如果你发现不能修改的话,将右下角的那把小锁解开就可以修改了。
修改 etc 文件夹的权限之后,再进入 etc 文件夹下面,修改名为 hosts 文件的权限(同样是everyone读与写),修改完成之后,你就可以直接在 hosts 文件上点右键,通过“文本编辑”打开并编辑该文件了,不会出现没有权限的提示。修改并保存完成之后,记得将该文件和 etc 文件夹的权限还原。
本文分享的这几种 Lion 系统下修改 Hosts 的方法都不会出现没有文件修改权限的提示,这个提示其实也是 Lion 安全性更高的表现,以上几种方法在 10.6 系统中都可以使用,至少算得上 Lion 系统下几个最简单修改 Hosts 文件的方法了。另外大家可以看到以上三种方法都需要在终端中操作,而对于刚刚使用 Mac,且没有玩过 Linux 的用户来说可能会觉得很麻烦,实际上终端很简单,莫非就是几个命令,并且功能非常强大,能够实现很多意想不到的功能。所以,对于刚刚用 Mac 的同学来说一定不要被终端这种命令行操作所吓倒,基本上你只需要复制命令,然后粘贴进去按回车就可以了,这有什么难的呢?