如何在 Ubuntu 10.04 中添加 RAID 1 阵列?

Nic*_*ick 5 raid software-raid ubuntu ubuntu-10.04

我有一个现有的 Ubuntu 10.04 桌面系统设置并在硬盘驱动器(驱动器 A)上运行。

我想向系统添加另外两个硬盘驱动器(驱动器 B 和 C,相同大小)并将它们安装为 RAID 1 阵列。

我怎么做?

我知道如何在安装过程中创建 RAID 阵列,但我不想重新安装我的系统,我不应该这样做,因为我的系统文件将保留在与 RAID 阵列分开的自己的驱动器上。

我已将两个驱动器物理添加到系统中,并使用 gparted 将它们格式化为 EXT3。

Ubuntu 的磁盘实用程序有一个“创建raid”选项,但它不会让我选择我的任何驱动器(它认为它们都已满)。

我不介意使用 mdadm,但我发现了几个过时的指南,并且给出了相互矛盾的建议。有人说我必须编辑 /etc/raidtab 文件,有人说这是自动完成的。

将 RAID 1 添加到现有系统的当前(Ubuntu 10.04)首选方式是什么?

它应该在启动时变成一个突袭,并将自己挂载在 /home/myname/files/ 中。

额外信息:

/etc/mdadm.conf

DEVICE partitions
ARRAY /dev/md0 level=raid1 num-devices=2 metadata=00.90 UUID=4fd3b193:c6c09dea:46ed9f91:db68f1c3
Run Code Online (Sandbox Code Playgroud)

/etc/fstab

/dev/md0 /home/myname/files auto defaults 0 0
Run Code Online (Sandbox Code Playgroud)

cat /proc/mdstat(重启后)

Personalities : [linear] [multipath] [raid0] [raid1] [raid6] [raid5] [raid4] [raid10] 
md_d0 : inactive sdb1[1](S)
      1953511936 blocks

unused devices: <none>
Run Code Online (Sandbox Code Playgroud)

Lin*_*000 11

好的,

所有命令行内容 - 假设新驱动器是 /dev/sdb 和 /dev/sdc - 检查并记下您要使用的驱动器。仔细检查一下 - 你不想对你的操作系统磁盘做任何事情!!!

全部以 root 身份完成 (sudo -i) ...

1) 使用 fdisk 删除新分区,因为我们需要对它们进行不同的设置 - 对于每个驱动器:

 fdisk /dev/sdx (eg: fdisk /dev/sdb)
Run Code Online (Sandbox Code Playgroud)
  • d(删除)当前分区——按照提示操作
  • n(新分区)并创建一个完整大小的驱动器的主分区
  • t (type) 并将分区类型设置为 fd (linux raid autodetect)
  • w(写入)您的更改并退出

fdisk 帮助:http : //tldp.org/HOWTO/Partition/fdisk_partitioning.html

2) 创建新的 RAID 阵列 - 我们假设 /dev/md0(第一个 RAID 阵列)

  mdadm --create /dev/md0 --chunk=128 --level=1 --raid-devices=2 /dev/sdb1 /dev/sdc1 
Run Code Online (Sandbox Code Playgroud)

3)格式化你的新数组:

  mkfs -t ext3 /dev/md0    
Run Code Online (Sandbox Code Playgroud)

(如果需要,也可以使用 ext4)

4) 您需要创建 /etc/mdadm/mdadm.conf 否则您的阵列会在您重新启动服务器时消失!

echo "DEVICE partitions" > /etc/mdadm/mdadm.conf
mdadm --detail --scan >> /etc/mdadm/mdadm.conf 
Run Code Online (Sandbox Code Playgroud)

创建此文件后,查看/编辑它以确保“DEVICE partitions”字样独立成一行。如果阵列在重新启动时未自动启动,请参阅本答案末尾的更全面的 .conf 文件。

5) 确保挂载目标文件夹存在:

mkdir /home/myname/files/
Run Code Online (Sandbox Code Playgroud)

6) 将 mount 添加到 /etc/fstab - 在最后添加这一行

/dev/md0  /home/myname/files  auto   defaults  0 0
Run Code Online (Sandbox Code Playgroud)

您可以使用以下命令检查您的新 RAID 阵列是否正在运行并进行首次同步:

cat /proc/mdstat
Run Code Online (Sandbox Code Playgroud)

编辑:

在重新启动时阵列消失的进一步 - 尝试以下 madam.conf,其中包括您为阵列发布的行:

# mdadm.conf
#
# Please refer to mdadm.conf(5) for information about this file.
#

# by default, scan all partitions (/proc/partitions) for MD superblocks.
# alternatively, specify devices to scan, using wildcards if desired.
DEVICE partitions

# auto-create devices with Debian standard permissions
CREATE owner=root group=disk mode=0660 auto=yes

# automatically tag new arrays as belonging to the local system
HOMEHOST <system>

# instruct the monitoring daemon where to send mail alerts
MAILADDR root

# definitions of existing MD arrays
ARRAY /dev/md0 level=raid1 num-devices=2 metadata=00.90 UUID=4fd3b193:c6c09dea:46ed9f91:db68f1c3
Run Code Online (Sandbox Code Playgroud)