使用 mdadm 构建并挂载 RAID 1 阵列
在这一步中,你将把注意力从 LVM 转向另一种强大的存储技术:RAID(冗余磁盘阵列)。你将使用 mdadm 工具创建一个 RAID 1 阵列,也称为镜像。在 RAID 1 配置中,数据会同步写入两块磁盘,从而提供冗余。如果其中一块磁盘损坏,数据在另一块磁盘上依然安全。
首先,我们需要另外两个模拟磁盘用于 RAID 阵列。在你的 ~/project 目录中创建两个新的 256MB 磁盘镜像文件:disk3.img 和 disk4.img。
truncate -s 256M disk3.img disk4.img
接下来,将这些新的镜像文件与未使用的回环设备 /dev/loop22 和 /dev/loop23 关联。
sudo losetup /dev/loop22 disk3.img
sudo losetup /dev/loop23 disk4.img
现在你已经准备好构建 RAID 1 阵列了。我们将使用 mdadm 命令,利用这两个回环设备创建一个名为 /dev/md0 的新 RAID 设备。
--create /dev/md0:创建一个名为 /dev/md0 的新 RAID 设备。
--level=1:指定 RAID 级别,在本例中为 RAID 1(镜像)。
--raid-disks=2:指定阵列将由两块磁盘组成。
/dev/loop22 /dev/loop23:组成阵列的组件设备。
执行以下命令:
sudo mdadm --create /dev/md0 --level=1 --raid-disks=2 /dev/loop22 /dev/loop23
系统会在继续之前询问确认。输入 y 并按回车键继续。
mdadm: Note: this array has metadata at the start and
may not be suitable as a boot device. If you plan to
store '/boot' on this device please ensure that
your boot-loader understands md/v1.x metadata, or use
--metadata=0.90
Continue creating array? y
mdadm: Defaulting to version 1.2 metadata
mdadm: array /dev/md0 started.
你可以通过查看 /proc/mdstat 文件来检查新 RAID 阵列的状态。
cat /proc/mdstat
输出显示 /dev/md0 已激活,并正在使用 /dev/loop23 和 /dev/loop22。你可能还会看到阵列正在进行同步(resync),这是正常现象。即使在此过程完成期间,阵列也是可以使用的。
Personalities : [raid1] [linear] [multipath] [raid0] [raid6] [raid5] [raid4] [raid10]
md0 : active raid1 loop13[1] loop12[0]
261120 blocks super 1.2 [2/2] [UU]
[>....................] resync = 0.4% (1088/261120) finish=0.1min speed=21760K/sec
unused devices: <none>
与 LVM 卷一样,新的 RAID 设备 /dev/md0 也需要文件系统。让我们将其格式化为 ext4。
sudo mkfs.ext4 /dev/md0
接下来,为 RAID 阵列创建一个挂载点。
sudo mkdir /labraid
最后,将 RAID 设备挂载到新目录。
sudo mount /dev/md0 /labraid
使用 df -h 验证 RAID 阵列是否已正确挂载。
df -h /labraid
输出确认 /dev/md0 设备(由于是镜像,总大小约为 256MB)已挂载并可以使用。
Filesystem Size Used Avail Use% Mounted on
/dev/md0 249M 2.6M 234M 2% /labraid
你已成功创建并挂载了一个 RAID 1 阵列,为 /labraid 挂载点提供了数据冗余。