在安装完基本系统后
使用 genfstab -L >> /mnt/etc/fstab
通过设备名挂载的方式,写入 fstab
但是在开机时遇到了报错,如图所示
然后我回到 iso 安装环境,做了点测试
发现 UUID 是存在的,但是无法通过 mount -U 无法挂载
同时 fstab 没有使用 UUID 的方式挂载分区
磁盘
3 个 1T HDD 组成 raid 0
分区和文件系统
/dev/md126
md126p1 EFI vfat 256M
md126p2 grub ext4 512M
md126p3 / btrfs 500G
md126p4 null null 500G
md126p5 null null 1.8T
挂载报错的是我根分区 md126p3 下的 btrfs 子卷
下图是测试过程演示
grub?
是的,用 grub2 作为引导
这个好像对 btrfs 支持不好,,我之前装直接 error 警告,我就重新分区了
补充一点:刚才经过测试,发现不止 md126p3(btrfs)无法挂载
其他的两个分区(vfat\grub)通过 UUID 挂载也会出现报错
无论是 arch 安装环境,还是通过 arch-chroot 进入系统分区后
我的 grub 是 ext4 分区,并且在我的另一台机子是没问题的
看起来你的 fstab 和我以前的 fstab 不一样?!
https://gist.github.com/Kazetoyuki/5522f14ab01396f6c2e0f912cb6b9039
最初就是使用 genfstab -U 生成的,报错后以为是生成的 UUID 问题,才重新生成了以设备名挂载的 fstab
又或者你非常想使用设备名.
修改 /etc/grub.d/40_custom
添加如下
GRUB_DISABLE_LINUX_UUID=true
重新 grub-mkconfig -o /
没试过 不过看 mount -U 报错 感觉是把 UUID 也作为一部分了
emmm,你一说我才发现做的测试做错了
emm 还有 fstab 的 / mount options subvol=/hxb,subvol=hxb
这是生成的还是自己加的...
生成的
是 nvme 驱动器么... 无意间逛到了这一帖
https://bbs.archlinux.org/viewtopic.php?id=208132 />试一下? 不确定是否是这个原因
脑抽忘记审题了 明明都说了是 3 个 HDD 组的 RIAD
无视 吧
用了 lvm 和 md raid? 看一下 mkinitcpio conf 里面的 hooks 顺序是否正确。
在开机时报错那里你可以 ls /dev/disk/by-uuid/ 看下你的 root fs uuid 是否出来了。
https://wiki.archlinux.org/index.php/GRUB/>https://wiki.archlinux.org/index.php/RAID怪我没审题看到 RAID
emmmm
" alt="image" width="4000" data-width="4000" data-height="2000">
说实话,这两个 wiki 看得我一懵╮(╯_╰)╭
为啥用 arch …找虐么这不是
Arch 大法好 /滑稽
... 看不明白旁边选中文... 我刚刚去看了一下翻译应该没问题...
https://wiki.archlinux.org/index.php/RAID/>重要的就这个了...
添加 mdadm_udev 到 /etc/mkinitcpio.conf 注意顺序
然后 mkinitcpio -p linux 重新生成 initramfs.
配置好了以后更新 kernel 也不用管了...
看这情况你的 mkinitcpio raid 配置可能有问题。贴下你的
/etc/mkinitcpio.conf 看看?
参考 https://wiki.archlinux.org/index.php/RAIDraid 啊? lvm 还是 mdadm ???
主板自带,硬件 raid
对了既然都上 btrfs 了,可以考虑下 btrfs 自带的 raid 0 啊,目测能提供不少 md 做不到的功能,比如在线添加移除磁盘. 只要别用 raid5/6 就好。
滑稽