一名刚刚使用 Mac OS X Lion 系统的朋友问我怎么该系统下修改 Hosts 文件,说网上搜了很多办法都不管用,只要编辑 Hosts 文件就出现”你不是文件 hosts 的所有者,因此没有权限写到该文件”的提示,要解决这个权限问题又比较麻烦,对于刚刚使用 Mac 的用户来说并不容易整明白。因此,就有了这篇小贴士,下面我分享四种方法来修改 Mac OS X Lion 系统中的 Hosts 文件,这四种方法都不会出现权限提示,而且 Mac OS X Snow Leopard(10.6) 用户也完全可以使用这些方法。

1、通过 VI 编辑器修改

打开终端(应用程序——实用工具),运行:

sudo vi /etc/hosts

屏幕上会提示你输入密码(输入密码的时候不会有任何字符显示,甚至*都不会显示,输完之后按回车就是了),打开 hosts 文件之后按 i 键进入插入模式(可理解为编辑模式),然后按照你的需要对该文件进行编辑,编辑完成之后按 ESC 键退出插入模式,之后按 :wq+回车保存退出,记得英文的冒号也是要输入的哦。

这是笔者一直都在使用的方法,VI 编辑器对于经常使用 Linux 的用户应该不会陌生,而且该编辑器是默认内置在 Mac 系统中的。但是,对于没有使用过 VI 的用户,还真得花一会儿功夫来学习其基本使用方法。另外VI编辑器是一个很好很强大的工具,想要玩好 Mac 的话,最好掌握这个工具的使用。

2、使用 nano 编辑器修改

和上面的方法类似,这个编辑器相比 vi 更加简单易用,但是功能不强大,似乎也没有 vi 流行。方法同样是在终端中运行:

sudo nano /etc/hosts

同样是输入密码,打开 hosts 文件,按照你的需要对该文件进行编辑,编辑完毕之后按 ctrl+o 保存,出现 File Name to Write: /etc/hosts 的时候按回车确认,再按 ctrl+x 退出即可。

3、使用 cat 命令合并文件

这个方法比较适合当你想往 Hosts 文件中添加一些内容的情况,首先你需要把需要添加到 Hosts 文件中的内容保存为一个TXT文本文件(建议直接保存在你的用户目录),我这里拿保存在用户目录中的123.txt为例说明。

同样是启动终端,然后运行下面两条命令:

sudo -s

cat ~/123.txt>>/etc/hosts

顺便说一下,~ 符号在 Mac 甚至所有基于 Unix 和 Linux 的系统中都是代表当前用户的用户目录,.代表当前目录,这回你就应该明白上面的命令中为什么是 ~/123.txt 了吧。

4、直接在图形界面中修改

打开 Finder,然后点击菜单栏中的 前往——前往文件夹(或者快捷键 Shift+Command+G),在路径中输入 /private,进入之后在 etc 文件夹上点击右键——显示简介,在文件夹简介窗口的最下面找到“共享与权限”,将 everyone 的权限修改为“读与写”,如果你发现不能修改的话,将右下角的那把小锁解开就可以修改了。

修改 etc 文件夹的权限之后,再进入 etc 文件夹下面,修改名为 hosts 文件的权限(同样是everyone读与写),修改完成之后,你就可以直接在 hosts 文件上点右键,通过“文本编辑”打开并编辑该文件了,不会出现没有权限的提示。修改并保存完成之后,记得将该文件和 etc 文件夹的权限还原。

最后的话

本文分享的这几种 Lion 系统下修改 Hosts 的方法都不会出现没有文件修改权限的提示,这个提示其实也是 Lion 安全性更高的表现,以上几种方法在 10.6 系统中都可以使用,至少算得上 Lion 系统下几个最简单修改 Hosts 文件的方法了。另外大家可以看到以上三种方法都需要在终端中操作,而对于刚刚使用 Mac,且没有玩过 Linux 的用户来说可能会觉得很麻烦,实际上终端很简单,莫非就是几个命令,并且功能非常强大,能够实现很多意想不到的功能。所以,对于刚刚用 Mac 的同学来说一定不要被终端这种命令行操作所吓倒,基本上你只需要复制命令,然后粘贴进去按回车就可以了,这有什么难的呢?

在 Mac OS X Lion 下修改 Hosts 的四种方法的更多相关文章

  1. linux下配置ip地址四种方法(图文方法)

    主要是用第四种方法 (1)Ifconfig命令  第一种使用ifconfig命令配置网卡的ip地址.此命令通常用来零时的测试用,计算机启动后 ip地址的配置将自动失效.具体用法如下.Ipconfig  ...

  2. Linux下配置ip地址四种方法

    linux系统安装完,以后通过命令模式配置网卡IP.配置文件通常是/etc/sysconfig/network-scripts/ifcfg-interface-nameifconfig后显示的内容,l ...

  3. linux下配置ip地址四种方法(图文)

    (1)Ifconfig命令   第一种使用ifconfig命令配置网卡的ip地址.此命令通常用来零时的测试用,计算机启动后 ip地址的配置将自动失效.具体用法如下.Ipconfig  ethx   i ...

  4. vmware 12中安装MAC OS X Lion 10.7

    下载并安装vmware.    下载并安装MAC补丁.    创建虚拟机.    设置ISO文件.    开启虚拟机.    安装vmware tools. 1. 下载并安装vmware.我是直接在腾 ...

  5. 解决Mac OS X Lion狮子系统及win7多分区教程

    [绿茶教程]解决Mac OS X Lion狮子系统及win7多分区教程   工具/原料 8G的u盘制作lion系统安装盘   步骤/方法  插入U盘---开机---按住左下角“Option”键(alt ...

  6. XAMPP:继MAMP之后,Mac OS X平台下又一款帮你快速搭建服务器环境软件

    之前,有很多人都有打算在自己的Mac OS下搭建一个本地测试用的Apache+PHP+MySQL网络服务器环境. 在目前而言至少有3种办法可以实现这一点: 通过Xcode开发者套件和php.Apach ...

  7. 一、在windows环境下修改pip镜像源的方法(以python3为例)

    在windows环境下修改pip镜像源的方法(以python3为例) 1.在windows文件管理器中,输入 %APPDATA% 2.会定位到一个新的目录下,在该目录下新建pip文件夹,然后到pip文 ...

  8. Win7,Vista UAC下应用程序标注为“需要管理员权限”的四种方法(可以修改注册表)

    [转]Vista UAC下应用程序标注为“需要管理员权限”的四种方法 在Microsoft 的UACBlog里对此有过叙述.总结如下: 首先,如果一个程序被识别为管理员程序时,Vista会在它的图标上 ...

  9. Linux 下操作GPIO(两种方法,驱动和mmap)(转载)

    目前我所知道的在Linux下操作GPIO有两种方法: 1.编写驱动,这当然要熟悉Linux下驱动的编写方法和技巧,在驱动里可以使用ioremap函数获得GPIO物理基地址指针,然后使用这个指针根据io ...

随机推荐

  1. IOS 添加到通讯录

    addressBookHelper.h #import <Foundation/Foundation.h> enum { ABHelperCanNotConncetToAddressBoo ...

  2. 要点Java17 String

    字符串广泛应用在Java编程中,在Java中字符串属于对象,Java提供了String类来创建和操作字符串. 创建字符串 创建字符串最简单的方式例如以下: String greeting = &quo ...

  3. Oracle学习(十):视图,索引,序列号,同义词

    1.知识点:能够对比以下的录屏进行阅读 视图,序列,索引,同义词 SQL> --视图:虚表 SQL> --视图的长处:简化复杂查询.限制数据訪问(银行用的多).提供数据的相互独立.相同的数 ...

  4. Android_Fragment_Fragment具体解释

    Android_Fragment_Fragment具体解释 分类: Android基础2013-10-03 08:23 92人阅读 评论(0) 收藏 举报 AndroidFragmentFragmen ...

  5. Unity 进度条3D制作(3D版)

    昨天我们一起学习了2D进度跳的制作,那么趁着我们脑海中还残存昨日的记忆,今天继续学习另一种方法: 实现思路:当鼠标悬浮Start按钮->实例化物体并显示进度->100/100->进入 ...

  6. live555从RTSP服务器读取数据到使用接收到的数据流程分析

    本文在linux环境下编译live555工程,并用cgdb调试工具对live555工程中的testProgs目录下的openRTSP的执行过程进行了跟踪分析,直到将从socket端读取视频数据并保存为 ...

  7. SQL查询多行合并成一行

    问题描述:无论是在sql 2000,还是在 sql 2005 中,都没有提供字符串的聚合函数,  所以,当我们在处理下列要求时,会比较麻烦:有表tb, 如下:id    value----- ---- ...

  8. HDU 3306 - Another kind of Fibonacci

    给你 A(0) = 1 , A(1) = 1 , A(N) = X * A(N - 1) + Y * A(N - 2) (N >= 2). 求 S(N) = A(0) 2 +A(1) 2+……+ ...

  9. [Effective C++系列]-为多态基类声明Virtual析构函数

    Declare destructors virtual in polymorphic base classes.   [原理] C++指出,当derived class对象经由一个由base clas ...

  10. Python调用C/C++动态链接库

    Python调用C/C++动态链接库 2013年07月26日 ⁄ 综合 ⁄ 共 3219字 ⁄ 字号 小 中 大 ⁄ 评论关闭   吐槽(可略过):不知不觉,4月份毕业,5月份进入团队,已有7个月.大 ...