从 Ubuntu 20.04 升级到 Ubuntu 22.04 后,我进入 initramfs 命令行,在那里我看到了我的 RAID 设备,但没有分区。
ls -l /dev/mapper/
total 0
crw------- 1 root root 10, 236 Nov 30 09:42 control
brw-rw---- 1 root disk 253, 0 Nov 30 09:40 isw_dbejgbheca_Volume0
然后我运行kpartx -a /dev/mapper/isw_dbejgbheca_Volume0
并且分区就出现了。
ls -l /dev/mapper/
total 0
crw------- 1 root root 10, 236 Nov 30 09:42 control
brw-rw---- 1 root disk 253, 0 Nov 30 09:40 isw_dbejgbheca_Volume0
lrwxrwxrwx 1 root root 7 Nov 30 09:42 isw_dbejgbheca_Volume0p1 -> ../dm-1
lrwxrwxrwx 1 root root 7 Nov 30 09:42 isw_dbejgbheca_Volume0p2 -> ../dm-2
我现在可以打字exit
并且计算机将启动 Ubuntu。
答案1
我昨天将英特尔软件 Raid 上的系统从 XUbuntu 20.04 升级到了 XUbuntu 22.04,但出现了与您发现的相同的问题。
我个人认为这可能是 dmraid 的一个错误。
我尝试了不同的 Ubuntu Life 系统(XUbuntu 和 Ubuntu Mate、20.04、18.04、22.04 和 22.10)。
我发现,基于 Ubuntu 18.04 或 20.04 的 Live Systems 在启动后会按预期显示我的 RAID 分区,并且可以访问。但基于 22.04 或 22.10 的 Live Systems 则不然。在这些系统中,我需要在终端中运行“sudo kpartx -a /dev/mapper/isw_ffiig8ggf_Volume0”。只有在此之后,我的 RAID 分区才会显示并且可以访问。基于 Porteus OS 的救援系统也会在启动后显示我的 RAID 分区,但使用的是 mdadm 工具。
我还注意到,从 22.04 开始,Ubuntu Live 版本中似乎不再存在“mdadm”(多磁盘管理)程序。我记得在升级到 22.04 之前,我的 XUbuntu 20.04 上安装了这个软件包(与 dmraid 并行,我知道 dmraid 正在使用中,因为分区列为 /dev/mapper/isw_xxxxpx)。“dpkg -l”显示升级后我的系统上不再安装此软件包。“apt-cache search”显示它可用。所以我重新安装了这个包。Initramfs 在安装过程中自动更新。Grub 需要通过“sudo update-grub”手动更新。“/etc/fstab”需要手动编辑以设置回分区的 UUID(有些列为 /dev/mapper/isw_xxxxpx)。
经过上述更改后,我的系统现在按预期启动。通过 lsbklid 和 blkid 检查显示,我的系统现在完全在 mdadm 工具上运行(分区显示为 /dev/mdxxxpx),而不再在 dmraid 上运行。
答案2
从 kubuntu 20.04 升级到 22.04 后,我遇到了与 dmraid 相同的问题。无法自动启用 RAID 设置。我的电脑上有两个。启动后,使用命令“dmraid -ay”会激活一个 RAID,但不会激活另一个 RAID。必须使用命令“kpartx -a”,然后使用“dmraid -ay”。没有错误消息,日志中也没有任何内容。
答案3
Chris 的回答并没有解决我的 Ubuntu 22.04 中的问题。
我必须安装 mdadm 包:
sudo apt install mdadm
在安装过程中,grub 和 initramfs 都进行了更新,我的 RAID 不知何故被转换为由 mdadm 而不是 dmraid 管理。因此,最终我成功启动了,并且在启动时激活并安装了 RAID。