Android自带的toolbox(位于/system/bin中)是常见Linux命令的阉割缩水版,一些常见的命令不支持或者支持的不好(例如支持的参数少了)。为此,为了使用功能完整的linux命令,我们需要使用添加第三方工具集Busybox。
BusyBox 是标准 Linux 工具的一个单个可执行实现。BusyBox 包含了一些简单的工具,例如 cat 和 echo,还包含了一些更大、更复杂的工具,例如 grep、find、mount 以及 telnet。有些人将 BusyBox 称为 Linux 工具里的瑞士军刀.简单的说BusyBox就好像是个大工具箱,它集成压缩了 Linux 的许多工具和命令。(摘自百度百科)。
下载BusyBox的binary, http://www.busybox.net/downloads/binaries
选择相应的版本,一般来说,android手机是选择arm版的最新版即可。或者进入android手机的命令行,查看/proc/cpuinfo这个文件。我下的是busybox-armv7l。下载之后重命名为busybox。
1. 打开adb命令行,在data目录下创建busybox文件夹(可以叫其它名字)
adb shell
mkdir /data/busybox
2. 退出adb shell,复制busybox文件到该目录下
exit
adb push busybox /data/busybox
3. 进入adb shell,修改busybox的权限的为755, 修改后可以通过ls -l查看。
adb shell
chmod 755 /data/busybox/busybox
4. 这时就可以使用busybox
但是使用的时候要带上路径,例如 /data/busybox/busybox ls;
如果当前目录在/data/busybox下,可以使用./busybox ls
如果希望在任何目录下都可以直接使用bosybox,则需要将路径/data/busybox export到path环境变量中:
export PATH=$PATH:/data/busybox
但是退出这个命令行后export的就失效了。要想永久生效,需要把这行添加到环境变量文件里或者将busybox文件放到系统定义好的环境变量的位置中。一般"/sbin","/system/bin","/system/sbin","/system/xbin"已经预定义了。可以使用export查看已有的环境变量,使用echo $PATH查看变量PATH的内容。
其它:
其实,也可以通过先把busybox文件复制到/sdcard/,再复制或移动busybox文件到非/mnt的路径。
关于busybox的安装
cd /data/busybox/
./busybox --install .
记得一定要cd到/data/busybox目录下,还有install后面有一个.表示当前。
这个操作只是安装到/data/busybox中,不是安装到PATH中,所以打命令的时候还是需要加上路径,
这里只是示范busybox的安装而已。
分享到:
相关推荐
Android系统在启动过程中,bootloader会加载boot.img文件,这是Android设备的核心启动镜像,包含了内核、ramdisk(包含initrd,即初始文件系统)以及其他必要的启动数据。本工具专注于处理这个关键环节,提供了对...
在IT行业中,Android镜像编辑工具是开发和定制Android系统不可或缺的部分。这些工具通常在Linux平台上运行,允许开发者和系统工程师对Android操作系统进行深入的修改和优化。Android AOSP(Android Open Source ...
随着Android系统的普及与发展,越来越多的技术爱好者加入到了自定义ROM的开发行列之中。本文旨在深入探讨Android刷机包的修改与移植方法,帮助读者了解如何对现有的ROM包进行定制化调整,以满足特定设备的需求或实现...
在Linux System Utilities中选择[*] mdev,[*] Support /etc/mdev.conf和[*] Support command execution at device addition/removal。这将启用mdev的功能。 其次,在文件系统中添加以下内容: ``` Vim /etc/init.d...
在Android系统中,Shell主要指的是Android的 BusyBox 实现,它提供了Linux shell环境,允许用户执行各种系统管理任务和调试操作。 在压缩包文件“device_oneplus_common-evox”中,“evox”可能是一个特定的Android...
然后,将这些VID和PID加入到“drivers/hid/hid-core.c”中的“hid_blacklist”或“hid_have_special_driver”结构中,以及“drivers/hid/hid-multitouch.c”中的“hid_device_idmt_devices”结构中。如果是Linux内核...
4. **内核裁剪与驱动程序开发**:根据设备硬件特性,开发者需要定制Linux内核,移除不必要的模块,添加或修改驱动程序,以实现硬件功能。 5. **Bootloader**:嵌入式系统的启动流程始于Bootloader,如U-Boot,它是...
5. **Recovery**:在Android和类似系统的术语中,恢复模式是一种特殊引导选项,允许用户进行系统恢复、备份、刷机等操作。在这里,它可能指的是修复或恢复华为EC2108到正常工作状态的过程。 6. **Boot.7.5.mtd11....
1. 获取源码:通常,RK3128项目的源码是基于Linux内核和各种开源组件的,例如Android或者其他轻量级操作系统。首先,你需要从官方仓库或者社区获取到对应的源码包,例如名为"RK3128--master.zip"的文件。 2. 环境...