busybox是用来制作嵌入式linux根文件系统的一个工具软件。BusyBox使用教程:首先把手机root。下载安装RE文件管理器。下载并解压busybox。用数据线将手机连接电脑,把解压出来的busybox拷到储存卡的根目录。
BusyBox最初是由BrucePerens在1996年为DebianGNU/Linux安装盘编写的。其目标是在一张软盘上创建一个可引导的GNU/Linux系统,这可以用作安装盘和急救盘。
BusyBox将许多具有共性的小版本的UNIX工具结合到一个单一的可执行文件。这样的集合可以替代大部分常用工具比如的GNUfileutils,shellutils等工具,BusyBox提供了一个比较完善的环境,可以适用于任何小的或嵌入式系统。
BusyBox包含了一些简单的工具,例如cat和echo,还包含了一些更大、更复杂的工具,例如grep、find、mount以及telnet。有些人将BusyBox称为Linux工具里的瑞士军刀简单的说BusyBox就好像是个大工具箱,它集成压缩了Linux的许多工具和命令。
安卓busybox首先要把手机给Root,下载BusyBox的binary,然后下载对应设备架构的版本后在电脑上使用adb或在手机上使用terminalemulator,最后连接手机和电脑开启USB调试模式安装即可。BusyBox是一个集成了三百多个最常用Linux命令和工具的软件,BusyBox将许多具有共性的小版本的UNIX工具结合到一个单一的可执行文件。
BusyBox安装准备工作:
1 先要把手机给Root了,具体教程这里就不提供了,网上有很多。
2 下载BusyBox然后下载对应你的设备架构的版本,下面将以busybox-armv6l文件名为示例。
3 需要有一个命令行的环境,在电脑上使用安卓 adb 驱动工具。
4 连接手机和电脑,手机的USB Mode设置成None(仅充电),并且开启USB调试模式。
BusyBox安装步骤:
1 将busybox-armv6l重命名为busybox
2 将busybox传入手机的SD卡,可以使用下面的命令或自己想其他办法。打开terminal(Linux,Mac)或cmd(Windows)
adb push ~/Desktop/busybox /mnt/sdcard
其中的~/Desktop请根据自己的情况替换成正确的路径
3 输入以下命令,为了在/system目录写入文件
adb shell
su
mount -o remount,rw -t yaffs2 /dev/block/mtdblock3 /system
使用 ls 检查一下 /system 里是否有 xbin 目录,没有的话输入 mkdir xbin 创建,因为本示例是要把busybox安装到 /system/xbin 。
4 复制 busybox 文件到 /system/xbin,并为其分配“可执行”的权限
cp /mnt/sdcard/busybox /system/xbin
chmod 755 busybox
5 这时就可以使用 busybox 的命令了,例如以前没有清屏的clear命令,现在只需输入 busybox clear 就可以实现清屏功能,使用完整版的 ls 只需输入 busybox ls 。
但是每次前面都加上个busybox太麻烦了,所以我们还要继续完成安装。在 /system/xbin 下输入
busybox --install
如果想安装到别的目录,则把点替换成别的路径。
至此就安装完成了,比较一下原来的 ls 命令和 busybox 里的 ls 命令。
busybox是一个工具,里面提供了很多
Linux
的命令,可以用来做很多事,比如
app2sd
,比如备份系统等。
安装好之后,不会在系统菜单里显示出什么东西。如果安装了
Titanium
Backup
,不会再提示没有安装busybox了。
1)首先,先把手机root了。
2)下载安装
root
explorer
3)下载Linux工具箱BusyBox
Pro好之后,用数据线链接手机,把解压出来的busybox拷到sd卡的根目录(或者其它目录,你记得就行)。
4)使用root
explorer
浏览到/sdcard,找到busybox,长按,在出来的菜单里选择Copy
5)浏览到/system/bin/目录
点击屏幕右上角的
remount
r/w
按钮(新版本的root
explorer
是mount
R/W好像,反正按来按去,能贴上就行)
6)然后点击屏幕下面的paste按钮。
7)拷贝完成之后,长按/system/bin/下面的busybox,选择Permission,按如图所示设置权限(把上面一行全部打钩,其它有钩也没有关系):
至此,你的busybox便设置好了
tar命令是Linux系统下的解压缩命令,在使用busybox移植文件系统时,busybox一般有自带的,但可能出现有些版本比较旧,无法解压缩targz文件,前几天工作中就遇到这种情况:
$ tar zxf /config/datatargz -C /root/config
tar: invalid option -- 'z'
BusyBox v1310 (2021-03-04 14:00:21 CST) multi-call binary
Usage: tar c|x|t [-hvokO] [-f TARFILE] [-C DIR] [-T FILE] [-X FILE] [--exclude PATTERN] [FILE]
Create, extract, or list files from a tar file
c Create
x Extract
t List
-f FILE Name of TARFILE ('-' for stdin/out)
-C DIR Change to DIR before operation
-v Verbose
-O Extract to stdout
-o Don't restore user:group
-k Don't replace existing files
-h Follow symlinks
-T FILE File with names to include
-X FILE File with glob patterns to exclude
--exclude PATTERN Glob pattern to exclude
$
登录后复制

如上,busybox自带的tar命令无法识别到z选项,而busybox是原厂编译好提供的,所以考虑自己移植tar命令。
二、tar命令源码下载
这里要下载的是GNU Tar,https://wwwgnuorg/software/tar/ 有它的详细的介绍。
源码下载地址是:ftp://ftpgnuorg/gnu/tar/,我这里下载的是tar-1271targz,因为我使用的Ubuntu是自带的tar命令也是1271的。
三、tar源码移植步骤
tar-1271targz的移植比较顺利,没出现奇怪的问题,步骤就是解压源码、配置、编译;
把tar-1271targz复制到Ubuntu的一个目录下,执行如下命令:
tar zxvf tar-1271targz
cd tar-1271
mkdir result
CC=csky-abiv2-linux-gcc /configure --prefix=`pwd`/result --host=arm-linux
make clean && make && make install
登录后复制
CC=csky-abiv2-linux-gcc 是指定交叉编译的gcc工具,上面的几个命令执行完成后,在result/bin目录会生成一个可执行文件tar,将它拷贝到板子里就可以啦。我是拷贝到板子的/root/tar路径,然后删除旧的链接,建立新的就可以正常使用tar命令了
欢迎分享,转载请注明来源:品搜搜测评网