El disco antiguo era un IDE de 80GB con varias particiones formateadas con ext3 y xfs.
En el nuevo disco decidí usar una partición para /boot de 100MB y en el resto del disco monte un PV de LVM para en el crear LVs para /, /usr, /var, /home y otras particiones, todas en formato ext4.
A continuación se encuentra el log de los pasos realizados para la migración del sistema en caso de que pueda servir de referencia para alguien que intente hacer lo mismo y para que yo pueda consultarlo en caso de que se me olvide.
Si no se entiende algo, asegúrense de leer el LVM Howto y si aun no se entiende por favor me dejan un comentario.
- Particionado del disco: sda1 100MB para /boot, sda2 el resto para el VG ambos tipo ext4 con cfdisk
- Inicializar partición para LVM: pvcreate /dev/sda2
- Crear el VG: vgcreate sga_vg /dev/sda2
- Crear los LVs cada uno con el 10% de la capacidad total del VG:
for i in root var home pruebas publico; do lvcreate -l10%VG -n${i}_lv sga_vg; done
- Formatear los LVs:
for i in root var home pruebas publico; do mkfs.ext4 -L /${i} /dev/sga_vg/${i}_lv; done
- Crear el espacio de swap y formatearlo para swap:
sgautomatizacion:/# lvcreate -L 4G -nswap_lv sga_vg
Logical volume "swap_lv" created
sgautomatizacion:/# mkswap -f -L swap1 /dev/sga_vg/swap_lv
Setting up swapspace version 1, size = 4194300 KiB
LABEL=swap1, UUID=3a4129e8-23f2-4298-b013-8a59c2391113
- Crear el punto de montaje para el nuevo root:
mkdir /nuevohd
- Montar el nuevo root:
mount /dev/sga_vg/root_lv /nuevohd
- Crear los puntos de montaje para las demás particiones:
mkdir /nuevohd/{pruebas,var,publico,home,boot}
- Añadir las entradas a /etc/fstab para las nuevas particiones para no tener que montar todo a mano en caso de que se reinicie:
/dev/sga_vg/root_lv /nuevohd ext4 defaults 0 2
/dev/sga_vg/var_lv /nuevohd/var ext4 defaults 0 2
/dev/sga_vg/home_lv /nuevohd/home ext4 defaults 0 2
/dev/sga_vg/pruebas_lv /nuevohd/pruebas ext4 defaults 0 2
/dev/sga_vg/publico_lv /nuevohd/publico ext4 defaults 0 2
/dev/sda1 /nuevohd/boot ext4 defaults 0 2
- Montar todo:
mount -a
- Parar los servicios importantes que puedan modificar el sistema de archivos:
sgautomatizacion:/# /etc/init.d/apache2 stop
Stopping web server: apache2 ... waiting .
sgautomatizacion:/# /etc/init.d/mysql stop
Stopping MySQL database server: mysqld.
sgautomatizacion:/# /etc/init.d/cron stop
Stopping periodic command scheduler: cron.
- Un poco de limpieza:
sgautomatizacion:/# sync
sgautomatizacion:/# apt-get clean
sgautomatizacion:/# for i in $(locate .Trash); do if [ -d $i ]; then echo "Borrando $i.."; rm -rf $i/*; fi; done
sgautomatizacion:/# rm -rf /home/*/.local/share/Trash/*
- Copiar lo de /:
sgautomatizacion:/# cp -ax bin/ cdrom etc/ initrd.img mnt/ sbin/ srv initrd lib/ media/ opt/ root/ selinux/ vmlinuz /nuevohd/
- Crear los puntos de montaje que faltan en el nuevo / :
# mkdir /nuevohd/{proc,tmp,dev,usr,sys}
- Arreglar los permisos de acceso:
# chmod a+rx /nuevohd/*
# chmod a+rwx /nuevohd/tmp
- Empezar la copia, primero lo que más se modifica por los servicios:
sgautomatizacion:/# cp -ax /var/* /var/.[^\.]* /nuevohd/var/
.. luego home y ya se pueden reactivar los servicios ..
y luego las otras particiones...
... Varias horas despues ...
- Editar /nuevohd/etc/fstab para poder arrancar desde el nuevo disco:
# /etc/fstab: static file system information.
#
#
proc /proc proc defaults 0 0
/dev/hdc /media/cdrom0 udf,iso9660 user,noauto 0 0
/dev/sga_vg/root_lv / ext4 defaults,errors=remount-ro 0 1
/dev/sga_vg/swap_lv none swap sw 0 0
/dev/sga_vg/var_lv /var ext4 defaults 0 2
/dev/sga_vg/home_lv /home ext4 defaults 0 2
/dev/sga_vg/pruebas_lv /pruebas ext4 defaults 0 2
/dev/sga_vg/publico_lv /publico ext4 defaults 0 2
/dev/sda1 /boot ext4 defaults 0 2
- Activar en el nuevohd los sistemas de archivos "virtuales" necesarios para poder hacer chroot:
sgautomatizacion:/# mount -o bind /sys/ /nuevohd/sys/
sgautomatizacion:/# mount -o bind /dev/ /nuevohd/dev/
- Cambiarse al nuevo sistema de archivos con chroot:
# chroot /nuevohd
- Activar el otro sistema de archivos que falta:
# mount proc /proc/ -t proc
- Actualizar la configuración de grub e instalar *unicamente* en el nuevo disco cuando la UI de configuración lo pregunte:
# dpkg-reconfigure grub-pc
- Reiniciar el equipo y configurar la BIOS para que arranque de el nuevo disco.
YA DEBE ESTAR LISTO!
Ahora a esperar unos días para asegurarse de que todo está bien antes de borrar el antiguo disco para darle otro uso.
No hay comentarios:
Publicar un comentario