基于busybox和linux kernel制作小linux
原创
©著作权归作者所有:来自51CTO博客作者panderbamboo的原创作品,请联系作者获取转载授权,否则将追究法律责任
本人使用的是busybox1.18.3下载地址为http://www.busybox.net/
使用的kennel是linux-2.6.18.tar.gz
编译busybox
我们开始编译busybox。(我的busybox-1.18.3 .tar.gz存放到了/root目录下)
# tar xf busybox-1.18.3 .tar.gz (解压busybox压缩包)
# cd busybox-1.18.3 (进入到解压后的busybox源码目录)
# make menuconfig (配置busybox)
注意配置时,一定要选择静态链接选项,该选项位于:
Busybox Settings –> Build Options –> Build Busybox as a static binary
接下来,我们安装busybox
# make install (busybox默认安装到了其源码树目录的名字为_install的目录中)
# cd _install (进入安装了busybox的目录)
当我们进入了busybox后发现了熟悉的linux目录结构,但只有这些是不够的还需要手工添加一些基本的配置文件。
4. 在busybox中添加配置文件并生成initrd镜像
这时,我们处在/root/busybox-1.18.3 /_install 目录下。
好了,开始我们的配置~
# mkdir proc sys etc dev (创建四个空目录,linux内核需要)
# cd dev
# mknod console c 5 1 (创建一个控制台字符设备文件)
# mknod null c 1 3 (创建一个0设备文件)
# cd ..
# cd etc
# vim fstab (输入如下图内容)
# mkdir init.d
# vim init.d/rcS (输入如下内容)
# chmod +x init.d/rcS (给rcS文件加上可执行权限)
# vim inittab (输入如下内容)
# cd ..
# pwd (打印当前目录)
/root/busybox-1.18.3/_install
此时表明我们处在busybox安装文件的根目录下
# rm linuxrc (删除linuxrc链接文件)
然后新创建一个指向busybox文件的链接文件
ln -sv bin/busybox init
在_install目录下执行
find . | cpio -H newc -o --quiet |gzip -q > ../initrd.gz
# cd ..
# cp initrd.gz /mnt/boot (此时我们把我们原来/mnt/boot下的initrd.gz备份成initrd.gz.bac)
#cp /usr/src/linux/arch/x86/boot/bzImage /mnt/boot(这是源码包经过tar zxvf linux-2.6.18.tar.gz -C /usr/src后cd /usr/src/linux又make menuconfig选定一些模块等选项然后编译make -j 4 我们只是为了编译出一个内核镜像,所以就不调用make install命令来安装内核了。原来/mnt/boot中的vmlinuz就不用了)
现在测试,开机启动时按e编辑,改成如下
此时的initrd.gz已经不是原来的那个了,原来的那个已经备份成initrd.gz.bac
上一篇:Linux设置bond网卡绑定
下一篇:linux系统启动的过程
提问和评论都可以,用心的回复会被更多人看到
评论
发布评论
相关文章
-
使用busybox制作微Linux系统
简单使用busybox。
linux busybox -
kernel+busybox+dropbear+ngnix自制Linux系统
本文主要自己借助于busybox,dropbear编译kernel,自己定制小型Linux系统。
busybox kernel dropbear