User Tools

Site Tools


linux:raid

This is an old revision of the document!


RAID

Consultar el estado de un RAID

Consultamos al detalle del dispositivo RAID /dev/md3:

sudo mdadm --detail /dev/md3

Hacer que un disco libre sea utilizado

Recientemente me encontré con este problema: había creado un RAID1 (mirroring) con un sólo disco, engañando a mdadm con la opción –force.

Al añadir un segundo disco, las cosas no iban bien. No sincronizaba:

xxxxx@xxxxxxxx:~> sudo mdadm --detail /dev/md3
/dev/md3:
        Version : 00.90.03
  Creation Time : Thu Oct  2 22:43:32 2008
     Raid Level : raid1
     Array Size : 732571904 (698.64 GiB 750.15 GB)
  Used Dev Size : 732571904 (698.64 GiB 750.15 GB)
   Raid Devices : 1
  Total Devices : 2
Preferred Minor : 3
    Persistence : Superblock is persistent
 
    Update Time : Fri Oct  3 23:34:49 2008
          State : clean
 Active Devices : 1
Working Devices : 2
 Failed Devices : 0
  Spare Devices : 1
 
           UUID : d91ddb2c:597c498a:4bdb599f:8c701b17
         Events : 0.10
 
    Number   Major   Minor   RaidDevice State
       0       8       49        0      active sync   /dev/sdd1
 
       1       8       33        -      spare

La solución consistía en cambiar el valor de “active devices”:

 sudo mdadm /dev/md3 --grow --raid-devices=2

Hacer un RAID más grande y no perder los datos

Tienes un disco RAID 1 que se te ha quedado pequeño y quieres ampliarlo sin perder los datos???? Puede conseguirse.

La técnica es sencilla: quitar uno de los discos viejos, y hacer creer al sistema que el raid falló.

Paralelamente creamos un raid nuevo, pero con un sólo disco: le copiamos todo el contenido y luego le incorporamos el segundo disco, para que haga el mirror.

Si tenemos una partición /dev/sdd1 marcada como FD (Linux RAID), este es comando que nos creará un disco virtual /dev/md3 de tipo RAID1:

mdadm --create /dev/md3 --verbose --force --raid-devices=1 --level=raid1 /dev/sdd1

Luego formateamos el dispositivo /dev/md3 como si tal cosa:

mkfs -t ext3 /dev/md3

y ya tenemos el raid nuevo listo para usar.

Luego habrá que hacer crecer ese raid con un nuevo disco para completarlo.

Añadir un disco a un raid preexistente

El comando no puede ser más fácil. Si tenemos un dispositivo raid /dev/md3 y un disco libre /dev/sdc1, el comando para añadirlo es:

> sudo mdadm --manage /dev/md3 --verbose --raid-devices=2 --add /dev/sdc1 

Inmediatamente comenzará a sincronizar el disco. Podrás comprobarlo porque al consultar /proc/mdstat te mostrará algo como ésto:

xxxxx@xxxxxx:~> more /proc/mdstat
Personalities : [raid1] [raid0] [raid6] [raid5] [raid4]
md3 : active raid1 sdc1[2] sdd1[0]
      732571904 blocks [2/1] [U_]
      [>....................]  recovery =  0.0% (529920/732571904) finish=230.2m
in speed=52992K/sec
linux/raid.1223071550.txt.gz · Last modified: 2022/12/02 22:02 (external edit)