initramfs作为Linux内核启动结束后第一个被执行的模块,是整个用户态系统初始化工作的核心。
本文首发CSDN博客:http://blog.csdn.net/goodboychina/article/details/27306985
本文以ArchLinux的initramfs作为研究目标。
首先解压initramfs.img
initramfs.img是经过gzip压缩了的cpio文档,解压前需要将initramfs.img重命名为initramfs.img.gz。
$ gunzip initramfs.img.gz
得到initramfs.img
$cpio -idmv < initramfs.img
得到解压后的文件。
1、/init
PID 1的进程的可执行文件,实际上是个bash脚本。
2、/init_functions
初始化函数