基于BusyBox的Mini Linux 制作教程
基于BusyBox的Mini Linux 制作教程
一、准备工作
1.指定工作目录,例如: (/home/oopos/linux/os/mini/work)
export WORK="/home/oopos/linux/os/mini/work"
mkdir -p $WORK
export SRC=$WORK/src
mkdir -p $SRC
export ROOT=$WORK/ops
mkdir -p $ROOT
cd $WORK
2.源码下载
(1) Linux Kernel
Url: http://www.kernel.org
cd $SRC
wget http://www.kernel.org/pub/linux/kernel/v2.6/linux-2.6.35.7.tar.bz2
tar xvf linux-2.6.35.7.tar.bz2
export LINUX_SRC=$SRC/linux-2.6.35.7
(2) BusyBox
Url: http://www.busybox.net
cd $SRC
wget http://busybox.net/downloads/busybox-1.17.2.tar.bz2
tar xvf busybox-1.17.2.tar.bz2
export BUSYBOX_SRC=$SRC/busybox-1.17.2
二、编译操作
1.编译Linux Kernel
(1)创建编译后的文件的输出目录($LINUX_OBJ),默认为源码目录,即: $LINUX_SRC.
export LINUX_OBJ=${LINUX_SRC}-obj
mkdir -p $LINUX_OBJ
(2)内核配置
cd $LINUX_SRC
make O=$LINUX_OBJ menuconfig
说明:
此处建议参考有关内核配置指南,为了支持initrd内存盘文件系统,以下两项必选:
General Setup -> Initial RAM filesystem and RAM disk support
Device Drivers -> Block Devices -> RAM block device support
(3)编译及安装
make O=$LINUX_OBJ (前面可以加上: time 来计算编译耗时),如: time make O=$LINUX_OBJ
cd $LINUX_OBJ
(将bzImage拷贝到$ROOT目录)
cp linux-2.6.35.7-obj/arch/x86/boot/bzImage $ROOT
2.编译BusyBox
(1)BusyBox配置
cd $BUSYBOX_SRC
make menuconfig
&n