Mientras que un RAID por hardware se configuraría en la BIOS y sería utilizado automáticamente por el kernel de Linux, un RAID por software requerirá algo más de trabajo en Linux.

Estas instrucciones serán adecuadas para alguien con un sistema doméstico que prefiera que sus archivos estén seguros o para aquellos que ejecuten pequeños servidores autogestionados. Para sistemas más grandes, de nivel de producción, es aconsejable una planificación cuidadosa y una implementación más elaborada.

Las herramientas a utilizar

En Linux, los discos RAID no siguen la nomenclatura habitual de /dev/sdX, sino que se representan como archivos md (multidisco), como md0, md1, md2, stc.

Un archivo importante que debes recordar es /proc/mdstat, que proporcionará información sobre cualquier configuración RAID en tu sistema. Escribiendo

cat/proc/mdstat

le dirá todo sobre cualquier configuración RAID existente.

El comando que necesitarás usar para configurar el raid es mdadm. La mayoría de los sistemas deberían tenerlo preinstalado. Si no es así, como en algunos sistemas Debian, puede obtenerlo con

sudoapt-get install mdadm

Una vez que tengas todas las herramientas necesarias, es el momento de decidir cómo será tu implementación.

Elegir la configuración RAID adecuada

Puedes encontrar más información sobre los diferentes niveles de RAID aquí. Teóricamente, podrías aplicar cualquier combinación de arreglos RAID a tus discos y particiones, aunque hay algunas prácticas y consideraciones comunes en las que vale la pena pensar.

  • El RAID 0 sería adecuado para discos no críticos en los que la velocidad es imperativa. Un buen uso del RAID 0 es para la partición de intercambio, ya que puede mejorar considerablemente su velocidad.
  • Para dos discos solamente, en sistemas pequeños como un ordenador doméstico en el que necesitas redundancia y la capacidad no es una preocupación, utiliza RAID 1.
  • Si tienes cuatro o más discos y quieres velocidad y redundancia, el RAID 10 es una buena opción.
  • El RAID 5 necesita un mínimo de tres discos, introduce una sobrecarga para las pequeñas escrituras aleatorias en el disco, y su rendimiento es inferior al de los discos grandes o lentos. No utilice RAID 5 si su disco es lento (menos de 7200 RPM) y/o grande (más de 1TB).
  • Para discos más grandes, es preferible el RAID 6, pero perderás dos discos para la paridad (en comparación con uno en el RAID 5), y la sobrecarga de escritura es mayor que con el RAID 5.
  • Para configuraciones más elaboradas, vale la pena considerar el uso de RAID junto con LVM, pero eso requeriría un conocimiento experto y una planificación cuidadosa.

Hay dos maneras de implementar RAID en Linux. El método más sencillo es añadir una nueva matriz RAID a un sistema existente para fines de almacenamiento. Para una configuración más elaborada y una mayor protección, el RAID podría (y debería) ser implementado en el momento de la instalación, pero por supuesto esto no es siempre una opción.

También existe la posibilidad de migrar un sistema ya instalado a una matriz RAID recién implementada, pero ese es un proceso bastante avanzado y no será cubierto en este sencillo tutorial. Ahora nos centraremos en añadir una matriz RAID a tu configuración existente, para almacenar datos sensibles o cualquier cosa para la que quieras asegurarte de que existe una opción de recuperación.

Añadiendo una matriz RAID a tu sistema existente

En este ejemplo configuraremos una matriz RAID 1 en dos discos que se utilizarán para almacenar archivos de datos importantes.

Nota: La creación de particiones y la configuración de los discos pueden provocar fácilmente daños o pérdidas de datos. Cree siempre una copia de seguridad antes de intentar este tipo de operaciones, y sólo proceda si se siente absolutamente seguro de que entiende el proceso. Proceda bajo su propio riesgo.

Primero tendrá que preparar sus particiones. Utiliza tu herramienta de particionado favorita y crea dos particiones, una en cada unidad, que se utilizarán como matriz RAID. Las nuevas particiones deben ser idénticas en tamaño y con el tipo «fd» (RAID autodetect) (Si su partición de sistema necesita ser redimensionada, puede utilizar un Live CD, como Parted Magic).

Asumiendo que tus particiones ahora son sda1, sda2 en el primer disco y sdb1, sdb2 en el segundo disco donde

  • sda1 es su partición de sistema original, (ext4 montada como /)
  • sda2 es tu nueva partición que se utilizará en la matriz RAID con un tamaño de 7.7GB
  • sdb1 es la otra partición que se utilizará en la matriz RAID con el tamaño de 7,7GB
  • sdb2 es el resto del segundo disco duro (como el tamaño de las particiones que componen el RAID debe ser idéntico, el exceso no puede utilizarse de forma significativa en este caso).

Lo interesante ahora son las particiones sda2 y sdb1 que conformarían el array RAID.

Hacer un array RAID 1 es relativamente sencillo utilizando el comando mdadm que permite un control fino para la gestión del RAID. Para ver todas sus opciones, escriba

mdadm –help

Para nuestro ejemplo, utilice el comando así

sudo mdadm –create/dev/md0 –level=1–raid-devices=2/dev/sda2 /dev/sdb1 –verbose

Para desglosar el comando anterior

–create /dev/md0 creará la nueva matriz RAID y la llamará md0. Si tiene configuraciones RAID existentes, asegúrese de utilizar un número que no se haya utilizado hasta este punto.

–level=1 Esto es para asegurarse de que es RAID 1.

–raid devices=2 básicamente le dice a mdadm que habrá dos particiones usadas que serán especificadas justo después (/dev/sada2 y /dev/sdb1 en este caso).

–verbose hará más salida, por lo que cuando monitoree el comando obtendrá más información.

– p f2 utilizaría el plan de rotación «lejano», lo que significa que los datos no se almacenan en la misma secuencia, lo que permite una mayor protección contra fallos simultáneos de la unidad. (Si la unidad falla por errores de fabricación, escribir la misma secuencia de datos de la misma manera todo el tiempo podría significar que las unidades podrían fallar más o menos al mismo tiempo. Útil con RAID 10)

Acepta el diálogo de confirmación y ya está.

Para ver lo que ocurre durante la configuración, puedes utilizar el comando watch desde otra ventana de terminal para monitorizar el archivo /proc/mdstat:

watch-dcat/proc/mdstat

Cuando esté listo, las barras de progreso cambiarán a la disposición habitual del contenido del archivo.

Aunque no es estrictamente necesario en todos los sistemas, ya que la mayoría buscaría automáticamente matrices RAID activas, es mejor asegurarse de que el archivo /etc/mdadm/mdadm.conf está creado. El comando sudo no tendrá suficiente «poder» para esto. Tendrá que iniciar sesión como root o utilizar su. En los sistemas Ubuntu, la contraseña de root suele dejarse sin configurar como precaución de seguridad. Para darle una contraseña, escriba

sudopasswd root

y escriba la nueva contraseña de root dos veces. (Esta contraseña funcionará cuando use su. Para sudo seguirías usando tu contraseña de usuario habitual).

Ahora conviértete en root:

su

y configure mdadm.conf:

mdadm –detail–scan>/etc/mdadm/mdadm.conf

Desgraciadamente, mdadm añade un parámetro de nombre por defecto que podría dar problemas al montar la matriz RAID en el momento del arranque. Para resolver esto, abra su archivo mdadm.conf recién actualizado con

sudonano/etc/mdadm/mdadm.conf

y elimine el bit name=[devicename]:[x], que en nuestro caso era

name=ubuntu-test:0

Ahora guarde y salga.

Entonces debería actualizar initramfs para usar el mdadm.conf modificado

sudo updtate-initramfs -u

Compruebe su nueva matriz RAID con:

mdadm –examine–scan

El comando no debería devolver ningún error.

Ahora formatea tu nueva matriz RAID con el sistema de archivos que elijas. En este ejemplo usaremos ext4.

sudo mkfs.ext4 /dev/md0

Para montar tu nueva matriz, crea el punto de montaje. Esto puede ser en cualquier lugar. En este ejemplo usaremos ~/failsafe

mkdir ~/failsafe

Luego abre el archivo /etc/fstab para escribirlo

sudonano/etc/fstab

y añade la siguiente línea

/dev/md0 [path_to_mount_point] ext4 defaults 12

Por supuesto, tendrás que sustituir [path_to_mount_point] por la ruta completa donde quieras montar tu nueva matriz RAID 1. En nuestro caso, la línea tenía el siguiente aspecto

/dev/md0 /home/test/failsafe ext4 defaults 12

Ahora móntalo sin reiniciar:

sudomount-a

Y ya está listo para usar su nueva matriz RAID 1.

Si tu RAID se ha convertido en de sólo lectura, comprueba los permisos y la propiedad en el directorio de montaje. Si es root, puedes cambiar esto con chown:

sudochown[nombre de usuario][ruta]

después de lo cual tu matriz RAID será de escritura.

Eso es todo lo que necesitas hacer para configurar RAID en Linux. Haznos saber en los comentarios si te encuentras con algún problema durante la configuración.