环境:
没有linux命令,没有initrd命令,没有init6命令
由于删除了/boot/efi/EFI/centos/grub.cfg ,重启服务器后,无法进入原来正常的系统,进入了grub命令行界面
备注:
对于centos7/8/openEuler:
如果是采用的UEFI方式引导的,那系统的GRUB的有效配置文件是 /boot/efi/EFI/centos/grub.cfg;
如果是采用的Legacy方式引导,那对应的GRUB的有效配置文件是/boot/grub2/grub.cfg。
解决办法:
采用系统镜像/U盘Centos,设置开机从镜像/U盘启动,如图进入启动界面
然后点击第二项,进入救援模式。 然后进入如下模式,选择1,继续进行回车,接下来,我们就会进入到一个shell模式中,需要切换根目录,进行系统修复:
1.bash-5.1# chroot /mnt/sysroot/ # 根据输入完1之后的提示进行chroot
2.cd /boot/efi/EFI/centos
grub2-mkconfig -o /boot/efi/EFI/centos/grub.cfg 或者grub2-mkconfig > /boot/efi/EFI/centos/grub.cfg
3.sync 切记一定要执行,否则重启不生效,再次在救援模式下查看grub.cfg可能会被修改为grub.cfg.new
4.exit + reboot
备注:如果是Legacy方式引导时:
1、chroot /mnt/sysroot/ 切换根目录
2、在/boot/grub2/目录下生成grub.cfg文件
grub2-mkconfig -o /boot/grub2/grub.cfg 或者grub2-mkconfig > /boot/grub2/grub.cfg
3、sync (切记一定要执行,否则重启不生效,再次在救援模式下查看grub.cfg可能会被修改为grub.cfg.new)
4、然后exit退出,再reboot重启。
扩展:
在 CentOS 中,进入救援模式后输入 sync 命令可以将内存中的数据同步到磁盘中。这是因为在正常关机时,操作系统会自动将内存中的数据写入到磁盘中,但在异常关机或重启时,可能会导致部分数据还未及时写入磁盘而发生数据丢失或损坏。
sync 命令的作用是告诉操作系统立即将内存中的数据写入到磁盘中,以强制完成数据同步。这样可以确保在接下来的操作中,已经写入到磁盘中的数据不会丢失或损坏,从而避免数据恢复或修复工作的复杂性和风险。
需要注意的是,sync 命令并不能修复已经损坏或丢失的数据,它只能保证已经写入到磁盘中的数据是完整和正确的。如果您遇到了数据损坏或丢失的问题,可能需要使用更专业的数据恢复工具或服务来解决。