首页 > Android > Android下修改hosts文件

Android下修改hosts文件

2010年1月24日 发表评论 阅读评论

由于某些原因,可能需要指定域名对应的IP地址。Android是基于Linux的系统,与Linux类似,通过hosts文件来设置。

在Android下,/etc是link到/system/etc的,我们需要修改/system/etc/hosts来实现。但是这个文件是只读,不能通过shell直接修改。可以通过连接到PC上使用adb来修改。步骤如下:

1、获得root权限:adb root

2、设置/system为可读写:adb remount

3、将hosts文件复制到PC:adb pull /system/etc/hosts <PC机上文件名>

4、修改PC机上文件

5、将PC机上文件复制到手机:adb push <PC机上文件名> /system/etc/hosts

如果要查看是否修改成功,可以在PC上执行adb shell,运行cat /system/etc/hosts;或者在手机上运行cat /system/etc/hosts。

在Android 1.6系统中,hosts文件格式有一点与PC机Linux不同:不能在一行中一个IP对应多个域名,比如:

127.0.0.1      host1.example.com host2.example.com host3.example.com

在大多PC机Linux系统是合法的,但不能在Android 1.6上起作用,需要拆成每个域名一行才能使用:

127.0.0.1      host1.example.com

127.0.0.1      host2.example.com

127.0.0.1      host3.example.com

分类: Android 标签: ,
  1. Mike
    2010年6月16日20:01 | #1

    你好执行完adb root之后出现adbd cannot run as root in production builds,知道怎么回事吗?

    • Suzg
      2010年6月18日02:03 | #2

      修改hosts需要有root权限,不知道你的系统是不是已经得到root权限了。各款机器方法不一样,需要针对你的型号在网上搜索一下

  2. 2010年8月8日12:52 | #3

    修改hosts了,下次手机重启之后,又还原了,这个问题就解决办法吗?

    • Suzg
      2010年8月10日01:21 | #4

      在我的G1上按照上面的方法修改后没遇到过这种情况

  3. Hza
    2011年7月8日15:27 | #5

    你好, 我还是一个Android 小白, 最近刚入手了一个Acer a500平板, 想要修改hosts文件以有效使用google服务.

    请问adb哪里可以得到? 如何在PC上使用adb来修改啊? 我的平板已经root好了.

    谢谢

  4. Alex
    2011年7月25日11:27 | #7

    Android的hosts文件和windows下的hosts文件有和区别?

  5. 2011年7月31日13:10 | #8

    有不用adb的方式,直接通过类是SFTP来在电脑里面,显示android手机系统文件的功能吗?这样可以直接复制文件,减少误操作

  1. 2011年6月27日14:39 | #1
  2. 2011年7月31日20:26 | #2
  3. 2013年9月13日18:56 | #3