使用现有数据磁盘和空磁盘创建 Linux RAID0

使用现有数据磁盘和空磁盘创建 Linux RAID0

我有一台 CentOS 7.7 服务器,其中/dev/sdc挂载了一个 vhd(format-type=btrfs);它包含数据。

我将一个空的 vhd 连接到虚拟机,/dev/sdd(我没有使用该磁盘进行分区fdisk

lsblk命令列出了附加的磁盘但没有挂载点。

用过的, mdadm --create /dev/md0 --level 0 --raid-devices=2 --name=/data-disk /dev/sdc /dev/sdd

输出:

mdadm:无法打开 /dev/sdc:设备或资源繁忙

问题:

  • /dev/sdc当我尝试创建 RAID0 阵列时,磁盘中的数据会被清除吗?

  • 我可以发出umount /dev/sdc命令mdadm --create,但这是执行此操作的正确方法吗?

=== 如果成功创建 RAID0 ===

将执行以下命令:

mkfs.btrfs /dev/md0

使用 uuid 信息编辑 /etc/fstab

===

尝试将两个磁盘添加到 RAID0,其中一个磁盘已设置为备份,其中包含数据。新磁盘已连接,可以看到正在使用的磁盘lsblk,但

NAME   MAJ:MIN RM  SIZE RO TYPE MOUNTPOINT
sdc      8:32   0    100G  0 disk /cass_backup
sdd      8:48   0    100G  0 disk

df -h

/dev/sdc        100G  82G  20G  20% /data_disk

已安装和未安装磁盘之间的数据分配如何完成?我需要先安装新的磁盘 (/dev/sdd) 吗?

答案1

将单个磁盘转换为 RAID0 阵列将休息您的文件系统。更准确地说,您首先需要小心地将数据分布/dev/sdc到两个磁盘上。

您可以更轻松地创建 RAID1 阵列,因为 RAID1 在两个磁盘上都有相同的数据:参见将单驱动器系统转换为 RAID

幸运的是你正在使用文件系统,它结合了文件系统、RAID 和 LVM 的功能。因此将第二个磁盘添加到你的 btrfs并将其转换为RAID0阵列。

编辑:对于您来说,转换为 RAID0 非常简单:挂载您原来的 btrfs 文件系统(比如说/mnt)。扩展文件系统:

mount /dev/sdc /mnt
btrfs device add /dev/sdd /mnt
btrfs balance start -dconvert=raid0 -mconvert=raid0 /mnt

上的数据/dev/sdd将会丢失,但是中的数据/dev/sdc将会保留。

相关内容