linux镜像文件作用,initrd镜像文件的作用与制作

本文详细介绍了Linux系统中initrd和initramfs的作用,它们都是在内核启动后、真正root文件系统加载前的临时文件系统。initrd基于loop设备,而initramfs基于cpio档案,后者更便于自动化。文章还提供了制作initrd和initramfs的步骤,并提及它们在Live CD如Knoppix中的应用。此外,文中还展示了如何解包和查看Ubuntu 8.04的initrd文件。
摘要由CSDN通过智能技术生成

by falcon

2008-04-19

如果自己制作过嵌入式Linux文件系统,那么应该比较了解initrd映像文件是个什么东西了?initrd即initial RAM disk,在内核解压之后,在真正的root filesystem被启动之前,它被加载到内存中,做一些系统初始化的操作,比如加载内核模块,挂载新的root文件系统等[1,2]。

initrd本身是一个文件,内核启动时可以把它展开成一个文件系统。

在2.6版本的内核以前,initrd基于一种特殊的loop设备[4],在展开成一个文件系统前需要通过一种loop设备挂载起来,因为涉及到挂载操 作,所以会涉及到一些操作权限。不过在2.6版本内核之后出现了initramfs,它和initrd实现同样的功能,但是它基于一种cpio档,无须挂 载就可以展开成一个文件系统,因此省去了各种相关的权限,在自动化方面更方便了[2,3]。

initrd的一个特别有趣的应用是Live CD,比如Knoppix[6],它通过initrd启动一个初始化的文件系统,然后再通过一个Cloop设备[5]挂载一个特别的压缩文件,展开为一个 新的Root文件系统,这样一个700M左右的光盘就能够装下几个G的东西,包含大部分的软件和相应的内核模块,进而支持各种各样的功能。

下面简单介绍一下这两种初始化文件系统(initrd和initramfs)的制作过程。

先准备一个测试的目录。

$ cd /tmp

$ mkdir initrd

$ mkdir initrd/loop initrd/cpio

1. initrd (via a loo

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值