Pasar de un linux corriendo en un disco a dos discos en RAID 1
El procedimiento se desarrollo para ser implementado en un servidor en producción instalado con un solo disco se desea obtener un arreglo RAID 1 por software para tener redundancia en los datos. Debido a la escasa ventana de mantenimiento, volumen de información contenida en el mismo y el tiempo que llevo configurar todos los servicios, reinstalar no es la mejor de las opciones.
Requerimientos:
Un equipo corriendo linux. Un disco libre de igual o mayor capacidad al que se encuentra en uso en el sistema, instalado en el equipo.
Conocimientos intermedios de linux. Particionado de discos y configuración de Grub.
Procedimiento:
Como para llevar adelante esta actividad se deben ejecutar actividades como ROOT casi en forma continua lo más práctico es invocar el comando "su -" para evitar estar escribiendo sudo todo el tiempo.
< sudo su -
Se debe actualizar el sistema para trabajar con la última versión de las utilidades para el manejo de discos y kernel.
< apt-get update
< apt-get upgrade
Finalizada la actualización se debe instalar "mdadm"
< apt-get install -y mdadm
A continuación se procederá a ver el estado del disco que se encuentra en uso por el sistema (sda).
< fdisk -l /dev/sda
> Disk /dev/sda: 10.7 GB, 10737418240 bytes
> 255 heads, 63 sectors/track, 1305 cylinders
> Units = cylinders of 16065 * 512 = 8225280 bytes
> Disk identifier: 0x0009b6c1
>
> Device Boot Start End Blocks Id System
> /dev/sda1 1 122 979933+ 82 Linux swap / Solaris
> /dev/sda2 * 123 184 498015 83 Linux
> /dev/sda3 185 549 2931862+ 83 Linux
> /dev/sda4 550 1305 6072570 83 Linux
Se copia la tabla de particiones y el sector de arranque de un disco al otro. Se puede hacer con sfdisk, pero con dd también se pasa el arranque del Grub que se aloja en el MBS
< dd if=/dev/sda of=/dev/sdb bs=512 count=1
Se verifica el estado de las particiones del disco nuevo (sdb). Donde se observa la correcta transferencia de las particones.
< fdisk -l /dev/sdb
> Disk /dev/sdb: 10.7 GB, 10737418240 bytes
> 255 heads, 63 sectors/track, 1305 cylinders
> Units = cylinders of 16065 * 512 = 8225280 bytes
> Disk identifier: 0x00000000
>
> Device Boot Start End Blocks Id System
> /dev/sdb1 1 122 979933+ 82 Linux swap / Solaris
> /dev/sdb2 * 123 184 498015 83 Linux
> /dev/sdb3 185 549 2931862+ 83 Linux
> /dev/sdb4 550 1305 6072570 83 Linux
Se deben modificar el tipo de las particiones del disco sdb para que puedan formar parte del raid. Esto se hace con el comando "fdisk".
< fdisk /dev/sdb
> The number of cylinders for this disk is set to 1305.
> There is nothing wrong with that, but this is larger than 1024,
> and could in certain setups cause problems with:
> 1) software that runs at boot time (e.g., old versions of LILO)
> 2) booting and partitioning software from other OSs
> (e.g., DOS FDISK, OS/2 FDISK)
Para cambiar el tipo de la particion se debe ejecutar el comando t dentro del prompt que brinda el fdisk. En este caso se selecciona la particion "2" y se asigna el tipo de particion "fd".
> Command (m for help):
< t
> Partition number (1-4):
< 2
> Hex code (type L to list codes):
< fd
> Changed system type of partition 2 to fd (Linux raid autodetect)
Lo mismo para la partición 3 del disco.
> Command (m for help):
< t
> Partition number (1-4):
< 3
> Hex code (type L to list codes):
< fd
> Changed system type
- 1
- 2
- 3
- 4
- siguiente ›
- última »
