使用RAID1设备

我们已经创建了一个raid1设备。

要使用它,需要在其上面创建一个文件系统。

这里创建ext4文件系统:

$sudo mkfs.ext4 /dev/md0

创建文件系统后,就可以将它挂载了。

mount /dev/md0 /data

要永久挂载,在/etc/fstab文件中添加新的一行配置(注意,最好使用UUID,因为重启后它的路径可能会变)。

查看UUID命令

$lsblk -o UUID /dev/md0
UUID
58ff8624-e122-419e-8538-d948439a8c07

安装mdadm.

Mdadm是在Linux上管理软件RAID的实用工具。

在Debian及其衍生系统上,可以使用以下命令进行安装:

$sudo apt-get update && sudo apt-get install mdadm

在红帽系列,CentOS系统尚,我们可以使用“DNF”包管理器:

$sudo dnf install mdadm

在Archlinux上,我们可以使用“Pacman包管理器”安装包:

$sudo pacman -Sy mdadm

对磁盘进行分区

虽然可以使用原始磁盘直接创建RAID,但一般避开这样做,而是在每个磁盘上创建一个分区比较好。

我们将使用mbr分区表。如果是比较大的硬盘(》2TB),则可以使用gpt硬盘。

使用parted初始化磁盘:

$sudo parted -s /dev/vdb mklabel msdos

创建一个分区,大小为整个磁盘空间。

$sudo parted -s /dev/vdb mkpart primary 1MiB 100%

我们现在可以将RAID标志放在分区上(这将把分区类型设置为“FD” - “Linux RAID AutoDetect”):

$sudo parted -s /dev/vdb set 1 raid on

/dev/Vdc硬盘上执行同样的操作

设置RAID1

使用mdadm创raid1:

$sudo mdadm \
  --verbose \
  --create /dev/md0 \
  --level=1 \
  --raid-devices=2 \
  /dev/vdb1 /dev/vdc1

输出示例:

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
mdadm: size set to 1046528K
Continue creating array? y

回答y,继续创建数组:

mdadm: Defaulting to version 1.2 metadata
mdadm: array /dev/md0 started.

使用“--detail选项”,查看新创建的RAID状态和设备名称。

$sudo mdadm --detail /dev/md0
/dev/md0:
           Version : 1.2
     Creation Time : Fri Apr 23 11:16:44 2021
        Raid Level : raid1
        Array Size : 1046528 (1022.00 MiB 1071.64 MB)
     Used Dev Size : 1046528 (1022.00 MiB 1071.64 MB)
      Raid Devices : 2
     Total Devices : 2
       Persistence : Superblock is persistent
       Update Time : Fri Apr 23 11:17:04 2021
             State : clean
    Active Devices : 2
   Working Devices : 2
    Failed Devices : 0
     Spare Devices : 0
Consistency Policy : resync
              Name : debian:0  (local to host debian)
              UUID : 4721f921:bb82187c:487defb8:e960508a
            Events : 17
    Number   Major   Minor   RaidDevice State
       0     254       17        0      active sync   /dev/vdb1
       1     254       33        1      active sync   /dev/vdc1

我们可以使用-examine选项查看每个单个磁盘的信息

$sudo mdadm --examine /dev/vdb1 /dev/vdc1

输出示例:

/dev/vdb1:
          Magic : a92b4efc
        Version : 1.2
    Feature Map : 0x0
     Array UUID : 4721f921:bb82187c:487defb8:e960508a
           Name : debian:0  (local to host debian)
  Creation Time : Fri Apr 23 11:16:44 2021
     Raid Level : raid1
   Raid Devices : 2
 Avail Dev Size : 2093056 (1022.00 MiB 1071.64 MB)
     Array Size : 1046528 (1022.00 MiB 1071.64 MB)
    Data Offset : 2048 sectors
   Super Offset : 8 sectors
   Unused Space : before=1968 sectors, after=0 sectors
          State : clean
    Device UUID : a9575594:40c0784b:394490e8:6eb7e9a3
    Update Time : Fri Apr 23 11:30:02 2021
  Bad Block Log : 512 entries available at offset 16 sectors
       Checksum : 51afc54d - correct
         Events : 17

   Device Role : Active device 0
   Array State : AA ('A' == active, '.' == missing, 'R' == replacing)
/dev/vdc1:
          Magic : a92b4efc
        Version : 1.2
    Feature Map : 0x0
     Array UUID : 4721f921:bb82187c:487defb8:e960508a
           Name : debian:0  (local to host debian)
  Creation Time : Fri Apr 23 11:16:44 2021
     Raid Level : raid1
   Raid Devices : 2
 Avail Dev Size : 2093056 (1022.00 MiB 1071.64 MB)
     Array Size : 1046528 (1022.00 MiB 1071.64 MB)
    Data Offset : 2048 sectors
   Super Offset : 8 sectors
   Unused Space : before=1968 sectors, after=0 sectors
          State : clean
    Device UUID : b0cf8735:5fe765c0:6c269c2f:3777d11d
    Update Time : Fri Apr 23 11:30:02 2021
  Bad Block Log : 512 entries available at offset 16 sectors
       Checksum : 28c3066f - correct
         Events : 17

   Device Role : Active device 1
   Array State : AA ('A' == active, '.' == missing, 'R' == replacing)
如何在Linux上设置raid1

创建环境

为了本教程,我将在虚拟环境中使用“Buster”系统以及先前创建的,这将是RAID1安装的一部分。

在本教程中,我们将在Debian中 使用两个虚拟磁盘(VDB,VDC)创建raid1。

执行lsblk命令查看:

sr0     11:0    1 1024M  0 rom
vda    254:0    0    7G  0 disk
├─vda1 254:1    0    6G  0 part /
├─vda2 254:2    0    1K  0 part
└─vda5 254:5    0 1021M  0 part [SWAP]
vdb    254:16   0    1G  0 disk
vdc    254:32   0    1G  0 disk
日期:2020-07-07 20:57:17 来源:oir作者:oir