使用 RAID 1 镜像两个外部备份驱动器

使用 RAID 1 镜像两个外部备份驱动器

我希望了解我的操作系统 (Pop OS Linux) 上的 RAID 设置并备份我的笔记本电脑。

我希望在一个外部驱动器(驱动器 A)上建立适当的备份方案,并希望在另一个外部驱动器(驱动器 B)之间建立 RAID 1。驱动器 A 和 B 都不会镜像我的硬盘驱动器,但我希望它们相互镜像以实现备份冗余。我尝试为他们设置 RAID 1,但他们试图镜像我的启动驱动器,这不是我想要的。

RAID 是否适合以这种方式镜像外部驱动器?或者有更好的工具吗?启动时驱动器必须存在吗?

在没有驱动器的情况下重新启动计算机时,我遇到了始终需要驱动器的问题。

答案1

从高层次的角度来看,使用外部磁盘的 RAID 作为备份设备......

...具有以下优点:

  • 从逻辑上讲,您只需备份数据一次(复制数据时,RAID 层会处理冗余)
  • 某些配置可以检测位腐烂并自动更正它(btrfs-raid、md-raid + dm-integrity)

...以及以下缺点:

  • 如果其中一张磁盘不存在(例如,如果您忘记插入其中一根数据线或电源线),则无法干净地组装 RAID 设备
  • 如果其中一个磁盘发生故障,或者由于某种原因在操作过程中断开连接,则必须重建 RAID 设备
  • 如果文件系统出现故障,则所有磁盘都包含故障数据,因为故障数据是由 RAID 层复制的(md-raid、lvm-raid 为 true;btrfs-raid、zfs-raid 为 false) - 例如,如果您将使用 md(adm)-RAID-1 以及其上的 btrfs 文件系统,并且下一个内核更新(包括 btrfs 代码)会在 btrfs 代码中出现一个错误,并且该错误会损坏 btrfs 文件系统,两者磁盘将包含有效的 md-RAID-1 设备,其顶部有损坏的 btrfs 文件系统。
  • 如果 RAID 层代码包含错误,则两个磁盘也会损坏 - 与文件系统错误相同的论证适用

我的建议是不要使用多个外部磁盘的 RAID 作为备份设备,而是使用具有独立文件系统的独立磁盘,并为每个磁盘串行执行备份解决方案。

恕我直言,应该使用 RAID 来提供高可用性。备份需要冗余,这包括文件系统级别的冗余(多个单独的文件系统实例)。

我的建议是在每个外部磁盘上创建独立的文件系统,并使用(例如rsync)脚本将数据备份到每个外部磁盘上。您可以并行运行脚本的多个实例(每个磁盘一个)以加快备份过程...

我想了解 RAID 的设置

做到这一点的一个好方法是使用(例如qemu kvm)虚拟机。这允许您创建任意数量的虚拟磁盘进行试验。

答案2

我不建议使用两个带有 RAID 的外部驱动器。最好使用 rsync 等工具在磁盘之间复制数据。然后您可以随时附加一张磁盘来检索数据。

如果您在两个外部驱动器上使用 RAID 进行备份,那么当您需要恢复时,您将面临在恢复数据之前让 RAID 正常工作的挑战。如果您信任您的备份,请让它变得尽可能简单。但不要为此使用 RAID。

相关内容