Cambiar el tamaño de las particiones subyacentes en mdadm RAID1


9

Tengo un NAS de fabricación casera y necesito reconfigurar ligeramente parte del uso de mi unidad.

Tengo un mdadm RAID1 compuesto por dos unidades de 3TB. Cada unidad tiene una partición ext3 que usa la unidad completa. Necesito reducir la partición ext3 en ambas unidades, y agregar una segunda partición ext3 de 8GB más o menos a una, e intercambiar la partición del mismo tamaño a la otra. Creo que tengo los pasos resueltos, pero quería alguna confirmación.

  1. Cambie el tamaño del RAID mdadm resize2fs /dev/md0 [size]donde el tamaño es un poco más grande que el espacio utilizado actualmente en la unidad
  2. Retire una de las unidades del RAID mdadm /dev/md0 --fail /dev/sda1
  3. Cambiar el tamaño de la unidad eliminada con parted
  4. Agregue la nueva partición a la unidad con parted
  5. Restaurar la unidad a la RAID mdadm -a /dev/md0 /dev/sda1
  6. Repita 2-5 para el otro dispositivo
  7. Cambiar el tamaño del RAID para usar la partición completa mdadm --grow /dev/md0 -z max

¿Hay algo que me haya perdido o que no haya considerado?

Respuestas:


6

Sí, te perdiste algo muy importante y lo aprendí por las malas. http://www.zdnet.com/blog/storage/why-raid-5-stops-working-in-2009/162 señala que ahora es estadísticamente inevitable tener sectores defectuosos en la matriz RAID.

Si tiene una matriz RAID degradada y una de sus unidades golpea un sector defectuoso, mdraid cerrará la matriz. Eso sucederá durante la recuperación cuando vuelva a agregar la unidad, ya que cada sector de las otras unidades necesita ser leído. He pasado bastante tiempo recuperándome de esto, lo cual es realmente complicado.

Por lo tanto, lo que debe hacer de antemano es: reparación de eco> / sys / block / mdX / md / sync_action

(consulte https://raid.wiki.kernel.org/index.php/Scrubbing )


Parece que no puedo ejecutar estos comandos incluso como sudo. Estoy ejecutando un servidor ubuntu. ¿Tendrías alguna idea de por qué?
J Spen

Demasiado tarde para ti, pero para responder: el shell se está ejecutando como tu y sudo no está interpretando la redirección >. O encapsula todo en una subshell, o úsalo tee. Prefiero tee:echo repair | sudo tee /sys/block/mdX/md/sync_action
ibotty

1: El puntero al fregado es útil y apropiado; 2: Es 2018 ahora, 9 años después de 2009. Estoy operando varios arreglos RAID5, de 5 discos de 8-10 TB cada uno, durante varios años, y no ha pasado nada malo (aparte de que uno de los gabinetes está muriendo ...). Creo que la advertencia de que RAID5 deje de funcionar fue muy exagerada: la posibilidad de que eso suceda no es tan grande como parece, y puede mitigarse aún más prestando atención a la tasa de error de HDD cuando los compra; 3: Deberías tener siempre una copia de seguridad de todo
Zak

3

Tus pasos se ven bien, con dos excepciones:

  1. Después resize2fs, debe reducir su matriz mdadm. Por ejemplo, haz el mdadm --grow --size xxxpaso 1a.

  2. También sugeriría hacer todo esto mientras se inicia en un CD de rescate, como SystemRescueCd , y no mientras / dev / md0 esté montado. Siga el cambio de tamaño con fsck, solo para asegurarse de que todo esté bien.

Al usar nuestro sitio, usted reconoce que ha leído y comprende nuestra Política de Cookies y Política de Privacidad.
Licensed under cc by-sa 3.0 with attribution required.