首先扫描逻辑卷:

首先扫描逻辑卷:

我最近将 Linux 系统从 HDD 移到了 SSD。我设法让它启动,一切都很顺利,直到我从 HDD 中删除了旧的启动分区。现在,当我尝试启动时,我最终进入了 dracut shell 并出现/dev/disk/by-uuid/xxxxx doesn't exist错误,我以前的分区的 UUID 在哪里(xxxxx我不确定它是哪一个,因为我不再拥有它们)。/boot/boot/efi

现在我需要重新生成 initramfs 以使用我从 hdd 克隆到 ssd 的新分区。我尝试dracut --regenerate-all --force从救援启动运行,但没有帮助。

我正在使用 Fedora 21,我该怎么办?还是其他地方有问题?

答案1

您还有 F21 安装媒体吗?

如果是,请执行以下操作:

启动到“故障排除”> 拯救 Fedora 系统

允许安装(通常不是 r/o)

chroot /mnt/sysimage 

dracut --regenerate-all -f && grub2-mkconfig -o /boot/grub2/grub.cfg

如果你是当然它不会抛出先前dracut --regenerate-all所犯的错误(即ls /boot显示它们但不会启动)只需使用第二个命令重建 grub。

~ 发自 Fedora 22 盒子

答案2

尝试以下链接说明:

https://ask.fedoraproject.org/en/question/57752/how-do-i-regenerate-my-initramfs/

首先扫描逻辑卷:

vgscan vgchange -ay

查找交换分区:

blkid|grep 交换

举个例子:

/dev/mapper/fedora-swap:UUID="28d71a2c-1b34-4115-aa19-083373ec4d8a" TYPE="swap"

编辑 /etc/fstab 以使用交换分区,以下是示例:nano /etc/fstab

/dev/mapper/fedora-swap swap 交换默认值 0 0

要重新生成所有 initramfs,请执行以下操作:

dracut --regenerate-all --force

答案3

我已经修复了 fstab 和 grub 条目中的所有内容,但在启动时我仍然进入维护模式,并出现 dracut 超时错误:

dracut --regenerate-all -f && grub2-mkconfig -o /boot/grub2/grub.cfg

这解决了我的问题。(CentOS7 专用服务器)

答案4

几乎每次发生这种情况时,我都会启动到以前的内核,然后在 Gnome 的终端中移除并重新安装内核和相关软件包。请注意,版本字符串会有所不同,因此只需通过 distors 首选方法查看当前安装的内核版本即可。以下是我上次发生这种情况时 Fedora 37 的示例。

$ sudo dnf remove *6.2.9-200*
$ sudo dnf upgrade kernel --refresh

几点说明:

  • 这不是强制性的,但为了确保元数据和包管理器缓存是最新的,添加了“--refresh”开关。如果以下条件不适用,请随意将其删除。
  • 如果您完全确定并确信没有突然推送的新内核,或者您没有使用不稳定/测试存储库,请在第二个命令末尾添加“-y”。它将为您接受更改;重新启动,一切就绪。

相关内容