在正在运行的系统上删除/boot/initrd.img文件是否可以?


9

我有一台具有RAID1根分区的服务器,但是在两个驱动器的每个驱动器上都有一个用于/ boot的小分区:每当进行更新时,我就将它们彼此“ dd”。

不幸的是/ boot分区太小-内核更新时,initramfs没有空间将新的initrd.img写入分区。固定分区的大小意味着要暂时取消公司的关键服务,这是我想避免的。

据我了解grub引导,initrd.img仅在安装实际分区之前使用。在系统运行时,只删除现有的initrd.img并释放空间来构建新文件就可以了吗?


尽管提供的答案确实可以直接回答您的问题,但是您可能还需要考虑更改initramfs-tools的配置,以减少其包含的模块数量和/或使用xz而不是gzip对其进行压缩。单独使用xz而不是gzip进行压缩会大大减少生成的initramfs图像的大小。更多详细信息:askubuntu.com/a/344252/309457
KingJ

Answers:


4
  • 在运行的系统上也可以将其和内核删除。
  • 但是您应该计划最坏的情况,如果在替换时系统崩溃或关闭,或者内核更新不正确,该怎么办。

    建议始终保持旧的内核正常工作。

    因此,请保留准备好的USB启动盘,以及该内核和ramdisk的备份。(5〜10分钟恢复)


1
关于USB备份的好主意,尽管在这种情况下,我在阵列中的另一个磁盘上进行了备份,这足以恢复。我会尝试一下,但是我可能会先尝试在另一台机器上进行仿真...
Peter Ford
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.