busybox使用及详解_建立自己的盒子BOX

busybox使用及详解_建立自己的盒子BOX1.busybox介绍busybox是什么?(1)busybox是Linux上的一个应用程序(application),即只有一个ELF文件头

busybox使用及详解_建立自己的盒子BOX

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;
}

今天的文章busybox使用及详解_建立自己的盒子BOX分享到此就结束了,感谢您的阅读。

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。
如需转载请保留出处:http://bianchenghao.cn/70825.html

(0)
编程小号编程小号

相关推荐

发表回复

您的电子邮箱地址不会被公开。 必填项已用*标注