从 cd 启动,如何更新 grub2 以反映改变的 uuid?

从 cd 启动,如何更新 grub2 以反映改变的 uuid?

我更换了磁盘,现在我收到来自 grub(grub2)的一条消息,说 w/uuid=XXXX 的磁盘不存在。

我现在已经从 USB 闪存驱动器启动了,但不知道该如何运行 grub 更新,以便它能够定位正确的 grub 安装。我猜它只会更新与当前启动系统关联的 grub。我遗漏了什么?

更让我困惑的是,我希望恢复的安装位于加密的 lvm 卷上,尽管启动分区不在 lvm 中,也没有加密,但这使得重新安装变得更加困难。如果需要的话,我确实有 luks 标头的备份,但希望能恢复到旧安装。

谢谢你!

答案1

修复此问题的几个步骤:

  • 用于sudo fdisk -l获取当前分区的列表。输出格式如下:

    设备启动开始结束块ID系统
    /dev/sda1 * 2048 391167 194560 83 Linux
    /dev/sda2 391168 40429567 20019200 83 Linux
    /dev/sda3 40431614 41940991 754689 5 扩展
    /dev/sda5 40431616 41940991 754688 82 Linux 交换 / Solaris
    
  • 用于sudo blkid device获取启动分区的 UUID。假设它是 sda1,则将sudo blkid /dev/sda1给出类似以下内容:

    /dev/sda1:UUID="b3855dc7-ab6e-4167-92a8-7679477e17c2" 类型="ext3" 
    
  • 编辑你的/etc/fstab以反映新的 UUID:

相关内容