We sometimes need to build Linux on the basis of busybox, but do not know how to do, here will be based on BusyBox Linux small system production to make detailed steps to explain.
Preparation environment:
1, a Redhat full system of virtual machines, this time the example is using Redhat Enterprise Linux 5.8
2, on the main virtual machine to add a hard disk as a small system storage disk, which is added to the IDE hard disk,
3, the preparation of Linux kernel source code and BusyBox source code, where the use of linux-2.6.38.5 and busybox-1.20.2 version
4, copy the current system on the kernel configuration (/usr/src/kernel/2.6.18-308.el5-i686/.config), make a slight change; if the current system kernel version differs from the kernel version of small Linux, a matching kernel blueprint can be prepared. I am here because the kernel version of the main system is older, so I prepared a newer kernel blueprint (KERNEL-2.6.38.1-I686.CFG) to modify and compile.
Specific process:
First, compile the kernel
1, will/root under the kernel source code solution to/USR/SRC under the linux-2.6.38.5, and to create a connection, named Linux
2, in the Linux kernel link file with/root/kernel-2.6.38.1-i686.cfg as the blueprint for compiling the kernel
(1) Copy the kernel blueprint to the/usr/src/linux directory, named. config
(2) To compile the current kernel, you can select various functions according to the actual needs. This example is mainly to the Ext3 file system and pcnet32 VMware Virtual machine Network driver directly loaded into the kernel, the other on-demand choice. The compiled functionality can be automatically saved to the. config file when it finishes. Finally execute make subdir=/arch for compilation
"Enter the manual compile kernel interface, provided that the" Development Tools "" Development Libraries "group is installed in Grouplist, and if not installed, configure the Yum source and install the two package groups"
"In device Drivers--> network device support--> Ethernet (or 100Mbit)--> find AMD PCnet32 PCI support, change it to * direct Compile into kernel "