initramfs 简单的制作方法
Linus 本人在 Linux 2.6 时代所提出的 “initramfs” 是一种更好的 “root=” 做法。
简单來说,initramfs 就是「kernel 2.6 的
initrd」。Initrd(initial ramdisk)即 /dev/ram0,是一种普遍使用在 embedded Linux
的观念;embedded Linux 利用 initrd 来载入 root filesystem(或是 bootstrap root
filesystem 后再以 NFS 挂载完整 RFS)。
下面介绍制作 Linux 2.6 的 initramfs 简单方法。假设 RFS 的目录为 /home/rootfs,則制作 initramfs 的命令为:
# cd /home/rootfs
# find . | cpio -o -H newc | gzip -9 >../cramfs.gz
更明确的说,initramfs 是 “compressed” ramfs(ram filesystem),ramfs 并不等于传统的
ramdisk;像是以 “genext2fs” 工具所制作的 initrd(ext2 格式的 image file)才是基于ramdisk
的传统做法,也就是说,initramfs并不等于传统上的 initrd。