赋予init脚本执行,制作initramfs文件,将x86-busybox下面的内容打包归档成cpio文件,以供 Linux内核做initramfs启动执行 sudo chmod +x init cdbusybox-1.32.1/_install find .-print0 | cpio --null-ov --format=newc | gzip -9> ~/oslab/initramfs-bus
另外就是我们制作ramdisk根文件系统镜像的时候使用的是genext2fs工具,在此我们制作initramfs根文件系统镜像时,并不需要额外的步骤,而是在你编译Linux内核的时候就自动生成了。自动生成的initramfs根文件系统镜像在Linux源码树的usr目录下。名字叫initramfs_data.cpio.gz,它是gz格式的压缩文件...
而指向的目标可以有以下三种:一个已经做好的cpio.gz,或者一个已经为制作cpio.gz准备好所有内容的文件夹,或者是一个text的配置文件。第三种方式是最灵活的,我们先依次来介绍这三种方法。 1)使用一个已经做好的cpio.gz档案 If you already have your own initramfs_data.cpio.gz file (because you created it y...
1. 查看initramfs的内容 # mkdir temp ; cd temp # cp /boot/initrd.img-2.6.24-16 initrd.img-2.6.24-16.gz # gunzip initrd.img-2.6.24-16.gz # cpio -i –make-directories < initrd.img-2.6.24-16 2. 创建initramfs 命令:mkinitramfs, update-initramfs 1) mkinitramfs # mkinitramfs -o /boot/...
另外就是我们制作ramdisk根文件系统镜像的时候使用的是genext2fs工具,在此我们制作initramfs根文件系统镜像时,并不需要额外的步骤,而是在你编译Linux内核的时候就自动生成了。自动生成的initramfs根文件系统镜像在Linux源码树的usr目录下。名字叫initramfs_data.cpio.gz,它是gz格式的压缩文件。
另外就是我们制作ramdisk根文件系统镜像的时候使用的是genext2fs工具,在此我们制作initramfs根文件系统镜像时,并不需要额外的步骤,而是在你编译Linux内核的时候就自动生成了。自动生成的initramfs根文件系统镜像在Linux源码树的usr目录下。名字叫initramfs_data.cpio.gz,它是gz格式的压缩文件。
cpio -i -d -H newc -F initramfs_data.cpio --no-absolute-filenames 以下shell 脚本可以创建一个预先构建的 cpio 归档,你可以用它来代替上面的配置文件: #!/bin/sh if [ $#-ne 2 ] then echo "usage: mkinitramfs directory imagename.cpio.gz" exit 1 fi if [ -d "$1" ] then ...
1、建立Initramfs文件系统启动时所需文件init(initramfs文件系统启动时会在根文件系统中执行第一个init程序,它对uboot传过来的参数init=/linuxrc不予理睬,所以需要在制作的根文件系统里的根目录加入init程序,否则无法启动。init程序和linuxrc程序一样都是符号链接文件,它们都是指向/bin/busybox程序。) ...
首先要找一个内核自己编译一个也可以用现有linux系统内核也可以一般在boot文件夹内 initramfs镜像命令如何生成及运行 生成initramfs镜像命令 若镜像根目录为/initrd,执行下面命令在当前用户主文件夹中生成myinitramfs.gz镜像。 cd /initrd find .|cpio -o -H newc|gzip>~/myinitramfs.gz 生成的镜像文件是gzip压缩过...
find .|cpio -o -H newc|gzip>~/myinitramfs.gz 1. find . 查找显示当前目录下的所有文件、文件夹 2. | 管道,将 | 左边命令的结果(也就是find . 得到的所有文件、文件夹路径名称)传给右边(也就cpio命令)3. cpio -o -H newc cpio是将文件系统打包或解包, -o 是打包 ...