再次运行打包/解压的 initrd(初始 ramdisk)文件

再次运行打包/解压的 initrd(初始 ramdisk)文件

嘿朋友们。目前我正在尝试让 Parted Magic 在提供 NFS 支持的 PXE 服务器上运行。所以我必须编辑 initrd.img 文件,必须添加脚本,一切都运行良好。但不幸的是我忘记了 USB 支持。所以我想再次解压该文件(1周后),添加后我尝试再次打包并使其运行。不幸的是它不再起作用了,但我不知道为什么。我忘记了什么步骤吗?不幸的是,那是 1 周前的事了,我在这里使用了这个教程。 https://access.redhat.com/solutions/24029

那么我做了什么?我拿了现在仍在工作的工作图像,将其解压,重新包装,没有任何更改 ---> 它不再工作了。我的步骤很好解释:

更改为工作目录后解压缩图像。

xz -dc < ../initrd.img | cpio -idmv

再次压缩图像。

find . 2>/dev/null | cpio -c -o | xz -9 --format=lzma > ../initrd.img

最后它不再起作用了。

在启动过程中我收到此错误。

在此输入图像描述

相同的 initrd.img (在执行上述步骤之前)运行良好。

在此输入图像描述

有什么问题吗?有没有工具可以生成 initrd 文件以使其在其他系统上运行?我用的是Debian。

答案1

哎哟。刚刚发现为什么效果不好。工作 initrd.img 的大小为 125MB。 initrd.img 文件允许的最大大小为 128MB。解压并重新压缩后,文件大小为 143MB,因此无法再启动。因此,我只寻找另一种压缩算法!

相关内容