Retire la unidad del RAID suave

11

Tengo un servidor dedicado con 3 unidades SSD en RAID 1. Salida de cat / proc / mdstat:

    Personalities : [raid1] [linear] [multipath] [raid0] [raid6] [raid5] [raid4] [raid10] 
md4 : active raid1 sdc4[2] sdb4[1] sda4[0]
      106738624 blocks [3/3] [UUU]
      bitmap: 0/1 pages [0KB], 65536KB chunk

md2 : active raid1 sdc2[2] sda2[0] sdb2[1]
      5497792 blocks [3/3] [UUU]

md1 : active raid1 sda1[0] sdc1[2] sdb1[1]
      259008 blocks [3/3] [UUU]

unused devices: <none>

¿Cómo se puede quitar de forma segura una unidad de la incursión suave sin perder ningún dato? Me gustaría eliminar una unidad de la matriz para volver a formatearla y usarla de forma independiente, manteniendo reflejados los datos más importantes.

Gracias por adelantado

Raul
fuente

Respuestas:

19

Tiene un espejo de tres vías: cada unidad tiene una copia completa de todos los datos. Suponiendo que la unidad que desea eliminar está /dev/sdc, y desea eliminarlo de las tres matrices, que le realice los pasos siguientes para /dev/sdc1, /dev/sdc2y /dev/sdc4.

Paso 1: retire la unidad de la matriz. No puede eliminar un dispositivo activo de una matriz, por lo que primero debe marcarlo como fallido.

mdadm /dev/md1 --fail /dev/sdc1
mdadm /dev/md1 --remove /dev/sdc1

Paso 2: borre los metadatos RAID para que el núcleo no intente volver a agregarlo:

wipefs -a /dev/sdc1

Paso 3: reduzca la matriz para que sea solo un espejo de dos vías, no un espejo de tres vías con una unidad faltante:

mdadm --grow /dev/md1 --raid-devices=2

Es posible que deba eliminar el mapa de bits con intención de escritura /dev/md4antes de reducirlo (el manual no está claro sobre esto), en cuyo caso lo haría justo antes del paso 3 con mdadm --grow /dev/md4 --bitmap=none, y luego volver a colocarlo con mdadm --grow /dev/md4 --bitmap=internal.

marca
fuente
¿Conserva esto los datos en el disco que eliminas? Es decir, ¿también puede acceder a los datos que estaban en el RAID desde el disco separado?
Nadie
1
@ Nadie, si desea leer los datos del disco extraído, debe omitir el paso 2. Prácticamente todos los datos siguen ahí después de la ejecución wipefs(solo borra algunos bytes clave necesarios para el reconocimiento del sistema de archivos), pero leerlos se convierte en un ejercicio en recuperación de datos en lugar de simplemente conectar el disco.
Marque el
0

hombre mdadm:

   -r, --remove
          remove listed devices.  They must  not  be  active.   i.e.  they
          should be failed or spare devices.

          As well as the name of a device file (e.g.  /dev/sda1) the words
          failed, detached and names like set-A can be given to  --remove.
          The  first  causes  all failed device to be removed.  The second
          causes any device which is no longer  connected  to  the  system
          (i.e  an  'open'  returns  ENXIO) to be removed.  The third will
          remove a set as describe below under --fail.
Ipor Sircer
fuente