如何Linux将RAID阵列从md0重命名为md2

时间:2020-01-09 10:41:56  来源:igfitidea点击:

我正在将一个名为/dev/md0的RAID阵列从serverA移到serverB。
在serverB上/dev/md0已被使用。
如何将RAID阵列从/dev/md0重命名为/dev/md2?
您可以将RAID阵列(基于软件的RAID阵列)移动到另一个系统。
但是,如果已在serverB上使用/dev/md0,则可以将/dev/md0重命名为/dev/m2(或者下一个可用的md设备)。
在此示例中:

  • /dev/md0是基于原始软件的RAID阵列。
  • /dev/md0由称为/dev/sdc1和/dev/sdd2的两个分区组成。
  • 我将/dev/md0重命名为/dev/md2,即将/dev/md2设置为新设备名称。

警告!如果执行这些示例,可能会导致计算机崩溃。
进行备份在执行备份之前,对系统进行备份有多么重要。

在serverA上执行以下命令

# mdadm --detail /dev/md0

输出示例:

/dev/md0:
        Version : 0.90
  Creation Time : Sat Jan  1 05:30:03 2000
     Raid Level : raid1
     Array Size : 2490176 (2.37 GiB 2.55 GB)
  Used Dev Size : 2490176 (2.37 GiB 2.55 GB)
   Raid Devices : 2
  Total Devices : 2
Preferred Minor : 0
    Persistence : Superblock is persistent
 
    Update Time : Wed Nov 21 01:43:40 2012
          State : clean
Active Devices : 2
Working Devices : 2
Failed Devices : 0
  Spare Devices : 0
 
           UUID : 8c229b6a:c20a3bfa:2d164f4f:84bee133 (local to host nas03)
         Events : 0.43537
 
    Number   Major   Minor   RaidDevice State
       0       8        1        0      active sync   /dev/sdc1
       1       8       17        1      active sync   /dev/sdd1

记下输出,尤其是版本号0.90。
建议您在serverB上使用相同版本。
接下来,在serverA上停止/dev/md0,执行:

# mdadm --stop /dev/md0

停止选项取消激活/dev/md0数组,释放所有资源。
使用选项#1或者选项#2重新组装RAID阵列。

选项#1:重命名RAID

接下来,您需要将先前存在的数组重新组装为/dev/md2:

# mdadm --assemble /dev/md2 --super-minor=0 --update=super-minor /dev/sdc1 /dev/sdd1

上面的命令将由选项super-minor = 0指示的/dev/md0重命名为/dev/md2。
现在,该阵列已准备好移入serverB。

选项#2:重命名RAID

" --super-minor"选项仅与" v0.90元数据"有关,通常不应该使用。
使用uuid更安全。
首先,找出所有设备的UUID,运行:

# mdadm -Es

输出示例:

ARRAY /dev/md0 UUID=8c229b6a:c20a3bfa:2d164f4f:84bee133
ARRAY /dev/md1 UUID=b9cf66f0:f4e3e168:2d164f4f:84bee133
ARRAY /dev/md/2 metadata=1.2 UUID=e8e12adc:e0a02bdf:1cd25903:6c2f2b02 name=nas03:2

执行以下命令,将RAID设备重新组装为/dev/md2:

# mdadm --uuid=8c229b6a:c20a3bfa:2d164f4f:84bee133 --update=super-minor --assemble /dev/md2

现在,该阵列已准备好移入serverB。

在serverB上执行以下命令

将/dev/sdc和/dev/sdd追加到serverB并启动服务器。
新服务器将立即使用/dev/md2,不会出现任何问题。
您可能需要更新mdadm.conf文件。

# cp -v /etc/mdadm/mdadm.{conf,bakup-nov-21-2012-by-theitroad}
# mdadm -Es > /etc/mdadm/mdadm.conf

重命名RAID阵列时可能的警告

  • 您可能需要更新grub.conf。
  • 此过程可能工作正常,但重新启动后/dev/md2可能根本无法识别。为避免此问题,在重组RAID阵列时请使用uuid。
  • 确保同时在serverA和serverB上更新mdadm.conf。