我在使用 OpenSUSE 事务服务器时遇到以下问题。由于错误,它被配置/boot
成ext4专用驱动器上的分区,其中还包含/boot/efi
。我注意到/boot
也在根上创建文件系统 /
分区,实际上这个分区正在被 GRUB 使用,并且事务更新. 因此对于普通用户或进程ext4 /boot
是可见的,但是当你卸载它时通常会被隐藏文件系统 /boot
出现...
我很乐意摆脱残疾人ext4的版本/boot
,但另一个(带有文件系统) 没有/boot/efi
子目录。因为/boot/efi
必须是特殊的 FAT32 分区,所以它必须是单独的分区,并且我需要一个挂载点。但是事务服务器阻止我修改目录布局,因此我无法boot/efi
在文件系统 /boot
。除了完全重新安装之外,还有什么办法可以让系统恢复正常吗?
答案1
关于您的评论,我建议以下内容,不寻常。
请注意,您应该自己测试这些“想法”,因为这不是关于如何解决问题的 100% 说明,而只是一个一般性的想法!
您应该仔细注意并记录这些系统变化,以便将来系统管理员不会再疑惑“这他妈的是什么?”。
卸载 ext4
/boot
和 fat32/boot/efi
文件系统,这样您就可以对 btrfs 文件系统感到满意。还请从自动挂载中删除它们(在 fstab 中禁用或等等)。现在您有 2 个选择,要么您勇敢地创建一个新的 btrfs 子卷,这将为您带来不错的结果,要么您将 EFI 分区挂载进去,
/home/.EFI
并且您总是必须手动重新配置 GRUB!很酷的选项 A:创建一个 btrfs 子卷,如下所示:
btrfs subvolume create /boot/efi
。/home
疯狂选项 B: 在你的as so中创建一个目录mkdir /home/.EFI && chown root. /home/.EFI && chmod 700 /home/.EFI && echo "lol, I'm crazy"
当您选择很酷的选项 A 时,我有个好消息要告诉您。只需将您的 efi 文件系统安装到该目录/子卷 (
/boot/efi
) 中,然后执行update-grub
,然后执行您的启动设备所在的grub-install /dev/sdX
位置sdX
。同时将您的 efi 文件系统添加到您的fstab
自动安装中。当你疯狂的时候,你会选择疯狂的选项 B。你将你的 efi 文件系统挂载到
/home/.EFI
。同时将它添加到你的fstab
自动挂载中,如果可能的话,否则不要执行自动挂载。还请执行 ,update-grub
并在其后跟上 ,grub-install --efi-directory=/home/.EFI /dev/sdX
其中sdX
应为启动设备。
备注:您的启动设备应该是具有 efi 文件系统的设备。
附言可以在不同的设备上拥有多个 efi 文件系统副本(用于冗余),但您需要告诉 grub。通常这会自动发生,但对于您来说,可能会稍微复杂一些
聚苯硫醚btrfs 子卷通常不会被快照,但对于 efi 文件系统来说,这通常是不需要的 -添加子卷后,请测试整个系统,尤其是快照功能