设备故障时的 btrfs 和 fstab

设备故障时的 btrfs 和 fstab

许多关于如何挂载 btrfs 文件系统的指南都说您可以使用文件系统中的任何设备进行挂载。

例如:如果文件系统中有 sda1、sdb1 和 sdc1,则您可以使用其中任意一个设备进行挂载。

但是如果 sda1 发生故障,而这正是要挂载的文件中的内容/etc/fstab,会发生什么?我认为它会失败。那么,即使设备发生故障,我如何确保 btrfs 文件系统也能挂载?

答案1

请勿sda1在 中使用 或诸如此类的东西fstab使用UUID=

对于 Btrfs,属于同一文件系统的每个设备都会报告相同的 UUID。您可以通过使用 查询所有相关设备来确认这一点blkidbtrfs filesystem show还会显示单个文件系统使用单身的UUID,无论涉及多少个设备。

Btrfs 使用此 UUID 来识别属于同一文件系统的设备。即使您通过指定/dev/sda1或 so 进行挂载,它也会使用它。这就是为什么使用dd或类似工具进行克隆有问题的

但即使您指定了UUID=infstab并且缺少其中一个设备,文件系统也不会挂载。您需要选择degraded挂载此类文件系统(如果可能)。指定degradedin fstab(和/或在 Grub 配置中)是可能的,并且您可能希望它在远程服务器中,因此如果出现问题,系统仍会启动,继续运行,管理员可以远程访问并尝试修复。但如果您可以物理访问机器,请考虑不指定degradedin fstab。我宁愿我的本地计算机不要挂载有问题的文件系统(从而引起我的注意),也不愿在降级模式下自动挂载并冒着我忽略问题的风险。

相关内容