Linux误删/boot/initramfs文件无法启动后进行故障恢复

注:如下操作系统环境为Rocky8.8
查看/boot目录下的文件,删除initramfs文件


重启后已无法进入系统


挂载镜像,从镜像启动将进入救援模式:

选择"Troubleshooting":

选择"Rescue a Rocky Linux system":

此处输入"1":

按照提示执行chroot /mnt/sysroot:
因为初始系统的/已经挂载到了/mnt/sysimage下面,切换根目录chroot /mnt/sysroot后,原系统的/etc、/boot等路径才可被直接访问

制作ramdisk文件
dracut 和 mkinitrd 都是用于生成 initramfs(初始内存文件系统)的工具
initramfs 的作用:在 Linux 启动时,内核需要挂载根文件系统(/),但某些情况下(如加密的根文件系统、LVM、RAID、网络挂载等),内核无法直接访问根文件系统。这时,initramfs(Initial RAM File System)就会发挥作用:

  • 它是一个临时的根文件系统,包含必要的工具和驱动(如 modprobe、lvm2、cryptsetup 等)。
  • 它会在内核启动后、切换到真实根文件系统之前运行,负责加载必要的模块和完成初始化任务(如解密磁盘、激活逻辑卷等)。
mkinitrd /boot/initramfs-`uname -r` `uname -r`
或
dracut /boot/initramfs-`uname -r` `uname -r`


重启后主机已经能正常进入系统

posted @ 2025-04-13 21:58  c00kiex  阅读(212)  评论(0)    收藏  举报