问题描述
遇到了“monkey test”病毒,并在网络上找到了相应的解决方法,但在尝试执行命令时收到了错误提示“chattr : not found”。解决方案建议他需要安装e2fsprogs
包来使得chattr
命令可用。然而,用户不确定如何通过ADB在设备上进行安装。
解决方案
方案1:直接使用Busybox安装
请注意,执行以下操作可能导致系统不稳定,请确认你了解其潜在风险。
– 首先,需要确保已经在设备上安装了Busybox应用。这是一个包含了多种Linux工具的Android应用程序包。如果还没有安装,请打开Google Play Store并搜索“Stericson’s BusyBox”进行下载。
安装完成后重启手机。使用adb shell访问设备的根 shell,然后输入以下命令:
bash
busybox --install
此操作会将Busybox中的所有工具文件复制到路径/system/bin/
中,使得这些工具可以在没有root权的情况下正常使用。此后,再次尝试执行使用
chattr
的命令时,应该能够正常工作了。例如:
bash
chattr -iaA providerCertificate.apk
方案2:使用第三方工具
- 预备一个含有
e2fsprogs
命令包的文件。通过以下方法获得可执行文件: 最简单的方法是在PC上下载并解压预编译好的Busybox或其他包含必要命令的应用(如Busybox或BusyBox-External),然后仅复制
chattr
到设备。使用ADB将上述文件传输至设备的指定位置,例如设备的存储内存中。具体的执行命令为:
bash
adb push /path/to/chattr /data/local/tmp/确认路径下存在该命令可执行文件后,在adb shell中进行授权:
bash
chown root:root /data/local/tmp/chattr- 使此文件的权限设置为可执行状态:
bash
chmod 755 /data/local/tmp/chattr - 尝试运行命令:
bash
/data/local/tmp/chattr -iaA providerCertificate.apk
方案3:使用预编译好的第三方APK安装
直接从网上下载或购买包含
e2fsprogs
相关工具的APK。这里推荐几个常用的第三方Busybox的应用,如Stericson’s BusyBox-External或其他类似的应用。使用ADB将APK文件推送到设备上:
bash
adb push /path/to/busybox.apk /data/local/tmp/在adb shell中安装该APK:
bash
pm install -r /data/local/tmp/busybox.apk- 安装完成后,尝试运行
chattr
命令:
bash
chattr -iaA providerCertificate.apk
请注意以上每种解决方案都有各自的适用范围和风险,请确保选择适当的方法以避免潜在的问题。建议始终备份数据并在可能的情况下获得ROOT权限来进行相应操作。若对命令行或脚本不熟悉,可参照Android官方文档来更好地理解这些步骤。