- 1、本文档共9页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
Linux下用BusyBox制作Ramdisk全过程(转帖部分完善)-薛正华的专栏-CSDN博客
Linux下用Busy Box制作Ramdisk全过程(转帖+部分完善) 收藏
/software_zone/2008/0625/947526.shtml
1.基础知识
一个操作系统可以简单的抽象为,引导程序 内核 文件系统。
vmlinuz 是 Linux 内核的镜像文件,可以被引导程序加载,从而启动 Linux 系统。
initrd 的全称是 boot loader initialized RAM disk,它是系统启动时所使用的根文
件系统映像文件,这个文件系统中包含几个驱动模块,用来装载实际的根文件系统,比如
一个 IDE 或 SCSI 硬盘的驱动模块,内核装入这个模块之后用它来驱动硬盘,挂接硬盘到
ramdisk 的某个子目录,然后再用其中的 pivot_root 命令,将硬盘文件系统变成根文件
系统,并开始执行 init 进程,此时 init ram disk 被 umount,寿终正寝。
由此可见,我们可以用vmlinuz initrd.img 做一个文件系同长驻内存的迷你 Linu
x。
现在进入正题了:
2.编译内核
cd /usr/src/进入内核源代码目录,没有的话去官方网站,随便下
make menuconfig配置编译选项请注意一定加入 RAM disk support 和 initi
al RAM disk
(initrd) support 的支持(在 block device 中)。另外最好将ext3 文件系统编入内
核,不要编成模块。配置完毕后保存为.config(默认)
make bzImage编译
在许多内核编译参考中还有
make modules
make modules_install 两步
但我们这里没有加入对 modules 的支持,所以不需要。生成的 bzImage 文件在 us
r/src/linux/arch/.../boot 中,省略的根据你的机器架构决定,make 过程中会有提示,
比如我的是x86_64. 注意这个文件非常重要,其实就是我们最终的 vmlinuz.
(我们做的就没有上面两步,也能成功,大家注意要把许多东西编译到内核里才能
用,如把网卡、磁盘驱动等,还有一些系统命令如果内核里没有的话不支持,如:moun
t、brctl 等。如还有一种方法就是在一个完整的 OS 上查看一些软件所依赖的库函数,然
后再打到 ramdisk 的对应目录)如下例:
[root@localhost zhxue]# which brctl
/usr/sbin/brctl
[root@localhost zhxue]# ldd /usr/sbin/brctl
linux-gate.so.1 = (0x009ad000)
libsysfs.so.2 = /usr/lib/libsysfs.so.2 (0x00abd000)
libc.so.6 = /lib/i686/nosegneg/libc.so.6 (0
/lib/ld-linux.so.2 (0
3.busybox
busybox 是一个集成了一百多个最常用 linux 命令和工具的软件,它甚至还集成了一
个 http 服务器和一个 telnet 服务器,而所有这一切功能却只有区区 1M 左右的大小.我们
平时用的那些 linux 命令就好比是分力式的电子元件,而 busybox 就好比是一个集成电路,
把常用的工具和命令集成压缩在一个可执行文件里,功能基本不变,而大小却小很多倍,在嵌
入式 linux 应用中,busybox 有非常广的应用,另外,大多数 linux 发行版的安装程序中都有
busybox 的身影,安装 linux 的时候案 ctrl alt F2 就能得到一个控制台,而这个控制台中的
所有命令都是指向 busybox 的链接.在我们的迷你 Linux 中,需要的也正是 busybox 的
命令和工具。
下载 /downloads/
使用过程中许多高版本都出现编译错误,所以用了一个最原始的版本 busybox-1.00
#cp busybox-1.00.tar.gz /tmp/bunny
#cd /tmp/bunny
#tar xvfz busybox-1.00.t
您可能关注的文档
最近下载
- 比亚迪-元EV535-产品使用说明书-智联领潮型-BYD7003BEV4-元ev535201903.pdf
- 妇科恶性肿瘤的手术治疗与随访指导.pptx
- ZY-SH-4食品安全管理体系审核指南.docx
- 婴幼儿大动作发展剖析课件.ppt VIP
- 食品安全管理体系审核与认证要求指引.pptx
- 婴幼儿动作发展的早期促进措施.pptx VIP
- 浅析影响DA42飞机最小控制速度的因素及解决办.docx
- 2024-2025学年 八年级上册物理(2024年新教材)教材课后习题-练习与应用(原动手动脑学物理).docx
- 《0—3岁儿童观察与评估(第一版)》0—3岁儿童动作发展的观察与评估.pptx VIP
- 肾内科提高临床路径入径率PDCA.pptx
文档评论(0)