busybox使用

1.busybox介绍

busybox是什么?

     (1)busybox是Linux上的一个应用程序(application),即只有一个ELF文件头。

     (2)它整合了许多Linux上常用的工具和命令(utilities), 如rm, ls, gzip, tftp等。对于这些工具和命令,busybox中的实现可能不是最全的,但却是最常用的,因此它的特点就是短小精悍,特别适合对尺寸很敏感的嵌入式系统。

     (3)busybox的官方网站是 http://www.busybox.net/downloads/

2.编译

     (1) make menuconfig

                 选择交叉编译工具

                 选择静态编译

     (2)make

     (3) make install

BusyBox中并没有尖括号(< >)的选项,也不会被编译成模块

将所有配置进行了分类,可以很方便地根据项目的需要进行裁减。 

  1. Busybox Settings --->        //BusyBox的通用配置,一般采用默认值即可。   
  2.     ---Applets  
  3. Archival Utilities --->      //压缩、解压缩相关工具。   
  4. Coreutils --->           //最基本的命令,如cat、cp、ls等。   
  5. Console Utilities --->       //控制台相关命令。   
  6. Debian Utilities --->        //Debian操作���统相关命令。   
  7. Editors --->         //编辑工具,如vi、awk、sed等。   
  8. Finding Utilities --->       //查找工具,如find、grep、xargs。   
  9. Init Utilities --->      //BusyBox init相关命令。   
  10. Login/Password Management Utilities --->   //登陆、用户账号/密码等方面的命令。   
  11. Linux Ext2 FS Progs ---> //ext2文件系统的一些工具。   
  12. Linux Module Utilities --->  //加载/卸载模块等相关的命令。   
  13. Linux System Utilities --->  //一些系统命令。   
  14. Miscellaneous Utilities ---> //一些不好分类的命令,如crond、crontab。   
  15. Networking Utilities --->    //网络相关的命令和工具。   
  16. Print Utilities --->     //print spool服务及相关工具。   
  17. Mail Utilities --->      //mail相关命令。   
  18. Process Utilities --->       //进程相关命令,如ps、kill等。   
  19. Runit Utilities --->     //runit程序。   
  20. Shells --->              //shell程序。   
  21. System Logging Utilities --->    //系统日志相关工具,如syslogd、klogd。


3安装busybox_env.sh脚本

echo "install busybox"

mkdir -p /usr/sbin /usr/bin /bin
#/mnt/extsd/tools/busybox --install
cp /mnt/extsd/tools/busybox /
./busybox --install
rm /busybox
export PATH=$PATH:/usr/sbin:/usr/bin:/bin

echo "OK, u can use busybox now"

4. busybox 格式化与分区

(1)  umount /mnt/extsd
     umount /mnt/tmpsd
(2)  busybox fdisk  /dev/block/mmcblk0
d


1


d


n
p
2


+2048M


n
p
1




t
1
b
t
2
b
w


(3) busybox mkfs.vfat /dev/block/mmcblk0p1
busybox mkfs.vfat /dev/block/mmcblk0p2

mount -t vfat  /dev/block/mmcblk0p1   /mnt/extsd
mount -t vfat  /dev/block/mmcblk0p2   /mnt/tmpsd


5.int StorageMonitor::formatSDcard() {
int ret = 0;
if (mInserted == false) {

return -1;

}
if (mConnectFD < 0) {
return mConnectFD; 
}
ALOGD("formatSDcard start,mMounted=%d",mMounted);

mFormated = true;
if (mMounted == true) {
ret = write(mConnectFD, CMD_UNMOUNT, sizeof(CMD_UNMOUNT));
if (ret < 0) {
return ret;
}
system("umount /mnt/tmpsd");

} else {
mFormating = true;

system("busybox fdisk /dev/block/mmcblk0<system/etc/aw_fdisk_conf.rc"); 

ret = write(mConnectFD, CMD_FORMAT, sizeof(CMD_FORMAT));
system("busybox mkfs.vfat /dev/block/mmcblk0p2");
system("mount -t vfat  /dev/block/mmcblk0p2   /mnt/tmpsd");

if (ret < 0) {
return ret;
}
}
return 0;
}

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
BusyBox是一个内核空间的工具集,它可以运行在嵌入式系统、手机、路由器等各种设备上。它可以提供很多常用的Linux命令和工具,如ls、cat、cp、grep、awk等等。在嵌入式系统中,它通常被用来代替独立的工具集,以减小系统的体积和复杂度。 下面是BusyBox使用说明: 1. 命令格式 BusyBox的命令格式和Linux的命令格式类似,通常是: ``` busybox <command> [options] [arguments] ``` 其中,`<command>`是需要执行的命令,`[options]`和`[arguments]`是命令的选项和参数。 2. 常用命令 BusyBox提供了很多常用的Linux命令和工具,下面是一些常用的命令: - ls:列出目录中的文件和子目录。 - cat:显示文件的内容。 - cp:复制文件或目录。 - mv:移动文件或目录。 - rm:删除文件或目录。 - mkdir:创建目录。 - rmdir:删除目录。 - touch:创建空文件或更新文件的时间戳。 - echo:输出文本。 - grep:查找文件中的文本。 - awk:处理文本文件的工具。 3. 使用示例 以下是一些使用BusyBox的示例: - 列出当前目录下的文件和子目录: ``` busybox ls ``` - 复制文件: ``` busybox cp file1 file2 ``` - 移动文件: ``` busybox mv file1 file2 ``` - 删除文件: ``` busybox rm file ``` - 创建目录: ``` busybox mkdir dir ``` - 查找文件中的文本: ``` busybox grep 'text' file ``` - 处理文本文件: ``` busybox awk '{print $1}' file ``` 以上是BusyBox的简单使用说明,如果需要了解更多命令和选项,请参考BusyBox的官方文档。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值