构建自己的Linux 之二 BusyBox移植
BusyBox是一个集成了一百多个最常用linux命令和工具的软件,他甚至还集成了一个http服务器和一个telnet服务器,而所有这一切功能却只有区区1M左右的大小.我们平时用的那些linux命令就好比是分立式的电子元件,而BusyBox就好比是一个集成电路,把常用的工具和命令集成压缩在一个可执行文件里,功能基本不变,而大小却小很多倍,在嵌入式linux应用中,BusyBox有非常广的应用,另外,大多数linux发行版的安装程序中都有BusyBox的身影,安装linux的时候按ctrl+alt+F2就能得到一个控制台,而这个控制台中的所有命令都是指向BusyBox的链接.
配置BusyBox
[root@localhost Desktop]# tar jxvf busybox-1.13.0.tar.bz2 [root@localhost Desktop]# cd busybox-1.13.0 [root@localhost busybox-1.13.0]#make menuconfig [*] Build Busybox as a static binary (noshared libs) busyboxsettings->busybox library tuning->username completion、fancy shell prompts make menuconfig设置CROSS COMPILE为arm-linux- installoptin--> [*] Don't use /usr 防止编译后生成的文件安装到主机的/usr目录下,改变了主机的系统 make install即可在_install目录下生成bin sbin及其linuxrc文件(该文件链接到/bin/busybox)。安装
将bin sbin及其linuxrc复制到文件系统中(直接覆盖,以前lib中的库文件不需要啦!)。
/etc目录下的配置文件
/etc/inittab的内容如下:
::sysinit:/etc/init.d/rcS ::respawn:-/bin/sh #tty1::askfirst:-/bin/sh ::ctrlaltdel:/bin/umount -a –r/etc/fstab的内容如下:
/dev/sda2 / ext3 defaults 0 0 /dev/sda1 /boot ext3 defaults 0 0 sysfs /sys sysfs defaults 0 0 proc /proc proc defaults 0 0 tmpfs /tmp tmpfs defaults 0 0 tmpfs /dev tmpfs defaults 0 0 var /dev tmpfs defaults 0 0/etc/init.d的内容如下:
#! /bin/sh /bin/mount –a测试
效果如下图所示:
![](http://hi.csdn.net/attachment/201108/17/0_1313599032QihH.gif)
![](http://hi.csdn.net/attachment/201108/17/0_13135990414Zk1.gif)
![](http://hi.csdn.net/attachment/201108/17/0_131359905483lD.gif)
![](http://hi.csdn.net/attachment/201108/17/0_1313599065Ss8v.gif)
![](http://hi.csdn.net/attachment/201108/17/0_1313599078Szpr.gif)
![](http://hi.csdn.net/attachment/201108/17/0_1313599089oWrM.gif)