我目前正在使用 Ubuntu Server 22.04,它有三块硬盘 - 一块用于安装操作系统,两块用于数据存储。我尝试在两块数据硬盘之间设置 RAID 1,但遇到了一个问题。当 RAID 中的一个数据硬盘出现问题时,另一个状况良好的硬盘也会变得无法访问。通常,如果一个 RAID 数据硬盘发生故障,我们仍然应该能够自动访问另一个数据硬盘,对吗?这个问题有解决办法吗?
目标:
我的目标是确保即使其中一个袭击数据硬盘发生故障,我仍然可以自动访问另一个硬盘,而无需重建 RAID。
我尝试过的解决办法:
我尝试通过重建 RAID 来解决这个问题,这使我能够重新获得对良好状况的数据硬盘的访问权限。
参考:
我使用的参考指南来自数字海洋
答案1
我找到了一个解决方案,即在文件中添加这两个命令/etc/rc.local
,以确保系统在启动时组装 RAID 阵列状态。
#!/bin/bash
mdadm --stop /dev/md0
mdadm --`assemble --scan
exit 0
然后按照附件文章中概述的步骤操作。
我的参考在 Ubuntu 20.04 上启用 rc.local
答案2
这是我进行软件突袭的方式
sudo mkdir -v /raid_data
sudo mkfs.btrfs -L data -d raid1 -m raid1 -f /dev/sdb /dev/sdc
sudo mount /dev/sdb /raid_data
此命令创建一个名为 data 的 btrfs 文件系统并将其挂载到 /raid_data 目录。-L 标志代表标签,允许您为文件系统指定名称。-d raid1 标志代表 raid1,表示文件系统将创建为 RAID1 阵列。-m raid1 标志代表元数据 raid1,这意味着文件系统的元数据(例如文件系统表)也将分布在两个磁盘上。-f 标志代表强制,这意味着该命令将覆盖磁盘上任何现有的文件系统或目录。/dev/sdb 和 /dev/sdc 标志指定将用于 RAID1 阵列的两个磁盘。
在 fstab 中你应该使用 UUID