我正在使用LineageOS 14.1,不需要也不需要将其植根。如何重新安装/system
rw并进行编辑/system/etc/hosts
?
“ 如何编辑'etc / hosts'文件? ”中的所有答案都将要求使用手机。
我正在使用LineageOS 14.1,不需要也不需要将其植根。如何重新安装/system
rw并进行编辑/system/etc/hosts
?
“ 如何编辑'etc / hosts'文件? ”中的所有答案都将要求使用手机。
Answers:
除非我错过任何事情,否则是不可能的。如果没有root用户访问权限,则只能修改(通过恢复或OTA)刷新更新的机制/system
。要被接受,必须使用与ROM相同的密钥对这种更新存档进行签名-只有ROM的开发人员(此处为LOS团队)才能执行此操作。
有可能是通过定制的恢复,它可以让您直接编辑的所有文件系统的方式(例如参见twrp)。但是在不知道它是什么设备的情况下,无法确定是否存在匹配的恢复(您可以在其网站的“ 设备”部分中查看其官方映像,并在XDA中搜索非官方的映像)。除此之外,它要么生根设备,要么不编辑其中的任何文件/system
。
fastboot boot twrp.img
)。这使解锁引导加载程序成为唯一的设备修改(当然,只是您要执行的修改之外)
可以使用VPN配置文件*影响主机名解析。现在,Play商店中提供了许多应用程序,它们为执行此操作提供了方便的方法,例如Hosts Go。请注意,由于此技术要求使用VPN配置文件,因此您将无法将实际的 VPN与该技术结合使用。
*自Android 4.0(API级别14)起-https://developer.android.com/guide/topics/connectivity/vpn
在非root用户的电话上,您实际上无法编辑hosts
文件,但是可以使用VPN应用程序,例如虚拟主机或个人DNS过滤器(两者都是开源的,我都没有隶属关系),它们可以拦截DNS流量并在查找hosts
之前查找自定义文件查询已配置的上游DNS服务器。
或者,如果引导加载程序是可解锁的,hosts
则可以通过自定义恢复来编辑文件。
有关更多替代方法,请参见:如何始终将域名解析为固定IP而无需生根?
警告:仅当ADB能够获得root访问权限时,此方法才有效,而大多数ROM并非如此。它可以在LineageOS 14.1中使用。
Developer options
在电话中启用adb
安装在电脑上在中应用以下设置Developer options
:
Root access
-> ADB only
Android debugging
->在将电话连接到计算机。如果询问,请在手机中授予权限。在计算机中,启动终端并运行
$ adb root
在手机中授予权限。重新安装
$ adb remount
启动远程植根外壳
$ adb shell
在adb shell中,编辑您的主机文件
# nano /etc/hosts
准备好后,断开连接
# exit
nano
?cat
就是您所拥有的。Android甚至没有附带基本的vi
。
nano
在/system/xbin/nano
。vim--version
(/system/xbin/
也没有vi
别名)说它是“由tpruvot @ CyanogenMod编译的”。
twrp
看起来是一个很好的解决方案。它具有小的手动更改或完整hosts
替换所需的一切。我运行最新的稳定所附带的BusyBox: ,,vi
和在那里。cat
chmod
chown