![如何在挂载根分区之前向 initramfs / initrd 添加要执行的命令?](https://linux22.com/image/1159320/%E5%A6%82%E4%BD%95%E5%9C%A8%E6%8C%82%E8%BD%BD%E6%A0%B9%E5%88%86%E5%8C%BA%E4%B9%8B%E5%89%8D%E5%90%91%20initramfs%20%2F%20initrd%20%E6%B7%BB%E5%8A%A0%E8%A6%81%E6%89%A7%E8%A1%8C%E7%9A%84%E5%91%BD%E4%BB%A4%EF%BC%9F.png)
Ubuntu 18.04 64 位
我的设置包含三个独立的块加密设备,以及一个未加密的 /boot。如果我从一张白纸开始,我可以用两张纸完成,但现在重新格式化所有内容将是一个科学项目。
在启动时,initramfs 中的脚本会分别要求输入密码,我想添加自己的脚本,在该脚本中我只需提示输入一次密码,然后一次性解密所有驱动器/分区,抢占系统脚本,并允许我使用 CBP 无法暴力破解的更复杂的脚本:)
我正在苦苦思索要把它放在哪里。
我看了很多东西,其中很多内容都谈到了如何运行 update-initramfs 以及生成 initrd 文件时执行的脚本,但没有提到如何向 initramfs 本身添加内容。我可以手动解压并重新打包 initrd 文件,但这与 update-initramfs 等系统工具不兼容,最好的情况是每次内核升级或其他安装后触发器时我都必须重做一遍。
我有点希望有一个像 init/rc3.d 这样的文件夹,我可以将它放到里面并使用序列号来尽早执行它。