克隆使用紧凑型闪存驱动器的 Ubuntu 22.04 实例似乎会导致 /boot/grub 目录为空

克隆使用紧凑型闪存驱动器的 Ubuntu 22.04 实例似乎会导致 /boot/grub 目录为空

我们有一个运行良好的 Ubuntu 22.04 设置。当我们克隆紧凑型闪存驱动器并放入相同的系统时,它无法启动并显示file '/grub/i386-pc/normal.mod' not found错误消息。我们一直在使用 grub recovery 来尝试查找原因,结果显示(但我们可能错误地使用了 grub recovery,因为我们是新手)/boot/grub尽管进行了经过验证的克隆,但目录仍为空。

在工作系统上df-h显示以下内容:

Filesystem                         Size  Used Avail Use% Mounted on
tmpfs                              377M  1.4M  376M   1% /run
/dev/mapper/ubuntu--vg-ubuntu--lv  5.6G  4.7G  644M  88% /
tmpfs                              1.9G     0  1.9G   0% /dev/shm
tmpfs                              5.0M     0  5.0M   0% /run/lock
/dev/sda2                          1.7G  247M  1.4G  16% /boot
tmpfs                               16M   16K   16M   1% /opt/intellair/db
tmpfs                              377M  4.0K  377M   1% /run/user/1000

在不可启动的系统上使用 grub recoveryls命令得到以下结果:

(hd0) (hd0,gpt3) (hd0,gpt2) (hd0,gpt1)

设置给出:

cmdpath=(hd0)
prefix=(hd0,gpt2)/grub
root=hd0,gpt2

如果我们尝试ls任何其他驱动器,我们得到Filesystem is unknown,但 gpt2 (对应/dev/sda2)有效,如果我们运行,ls /我们得到

config-5.15.0-52-generic
lost+found
System.map-5.15.0-52-generic
grub/
initrd.img
vmlinuz
initrd.img-5.15.0-52-generic 
vmlinuz-5.15.0-52-generic
initrd.img.old
vmlinuz.old

关键的是,当我们发出命令时,ls /grub它运行正常,但没有返回任何内容。我们认为这意味着 grub 文件夹是空的。这也表明无法加载我们期望在 grub 文件夹中的任何模块(例如 linux、kernel、normal 等)。

两个具体问题:

  1. 在 grub 恢复中如果/grub目录包含文件应该ls /grub列出它们吗?

  2. 假设/grub确实是空的,以前有其他人遇到过这个问题吗?这几乎就像紧凑型闪存驱动器的克隆专门省略了 grub 目录的内容?

值得注意的是,在旧的 Ubuntu 18.04 设置上,此过程对我们来说运行良好。只有在较新的 Ubuntu 22.04 上,克隆过程才会出现此问题。

相关内容