En el tutorial de hoy, voy a explicaros cómo se puede mover la partición Root de nuestra distribución Linux a otra partición (sea en el mismo disco duro o no). Esta necesidad se me presentó a mediados del año pasado, cuando todavía usaba Chakra, y desde entonces es un proceso que he usado en más de una ocasión con resultados satisfactorios y cero problemas.
Si se siguen los pasos al pie de la letra es una operación 100% segura, relativamente rápida y totalmente reversible. Solo necesitaremos un Live CD de alguna distro que tengamos por ahí (uno de Ubuntu, por ejemplo, servirá para nuestro cometido), e identificar correctamente cuál es la partición de origen y la de destino.
Si se siguen los pasos al pie de la letra es una operación 100% segura, relativamente rápida y totalmente reversible. Solo necesitaremos un Live CD de alguna distro que tengamos por ahí (uno de Ubuntu, por ejemplo, servirá para nuestro cometido), e identificar correctamente cuál es la partición de origen y la de destino.
Para obtener tal información, podemos
recurrir a GParted o al Editor de Particiones de KDE. Al ejecutarlos,
veremos una ventana similar a la de la captura de abajo. Ahí, debemos
buscar nuestra partición root original y mirar a qué disco pertenece
(sda, sdb, sdc…), qué número tiene (sda2, sdb1, sdj5, etc.) y cuál es su
UUID (un código alfanumérico que encontraréis en el apartado de
“información avanzada”). Obviamente, si vamos a mover una partición
necesitaremos un lugar de destino, así que tenemos que crear previamente
un hueco en el disco duro para realizar la mudanza, y anotar los datos
correspondientes.
Antes de seguir, quiero dejar constancia de que en este tutorial solo
hago referencia a Grub2; si usáis otro gestor de arranque algunos pasos
o comandos pueden variar -de hecho, es mucho más sencillo con Grub
Legacy-. Así pues, con la información de antes apuntada en un papel, nos
ponemos manos a la obra:
1) Iniciamos el ordenador con el Live CD y esperamos a que se cargue el escritorio.
2) En una terminal metemos los dos siguientes comandos:
sudo mkdir /mnt/old
sudo mkdir /mnt/new
3) Acto seguido, tecleamos los siguientes comandos:
sudo mount /dev/sdaX /mnt/old (donde sdaX es la partición root original).
sudo mount /dev/sdbX /mnt/new (donde sdbX es la partición root nueva).
4) Después de haber montado cada partición, procedemos al copiado de los archivos mediante dos comandos (uno para archivos normales y otro para datos ocultos). Quizá el segundo no es estrictamente necesario, pero yo lo ejecuto por si las moscas. Esta parte llevará unos cuantos minutos:
sudo cp -rav /mnt/old/* /mnt/new
sudo cp -rav /mnt/old/.* /mnt/new
5) Desmontamos la partición vieja y tecleamos un par de comandos más:
sudo umount /mnt/old
sudo mount -o bind /dev /mnt/new/dev
sudo mount -t proc none /mnt/new/proc
6) Ahora hacemos chroot en la nueva partición con el objeto de reinstalar Grub2.
El comando de instalación cambia en función del LiveCD que tengáis,
puesto que cada distro tiene sus propias maneras de gestionar los
paquetes. En Chakra y Arch se emplea sudo pacman -S grub, pero en las
derivadas de Debian se hace así:
sudo chroot /mnt/new /bin/bash
sudo grub-install /dev/sdb (donde sdb es el disco duro en el que tenemos la nueva partición root, y no hay que ponerle número ni nada de eso).
7) Ahora, antes de reiniciar, tenemos que ajustar unos pequeños detalles del fstab y del grub.cfg. Para ello, editamos el grub.cfg con nuestro editor de texto preferido (kate, gedit, nano…):
sudo kate /boot/grub/grub.cfg
Como podéis ver en la imagen, he resaltado las partes más
importantes en las que tenemos que fijarnos, pero puede haber más
(buscadlas y modificadlas siguiendo la misma metodología). Con
los datos de nuestra novísima partición root (UUID y compañía),
procedemos a sustituir las referencias antiguas por las nuevas:
- Donde ponga (hdX,Y), cambiamos las cifras de X y de Y atendiendo a lo siguiente:
X: indica el número de disco duro. Si el disco es sda, X es igual a
0. Si el disco es sdb, X es igual a 1. Si el disco es sdc, X es igual a
2, etc.
Y: indica el número de la partición. 1,2,3… Ejemplo: segunda partición del primer disco (hd0,2); segunda partición del tercer disco (hd2,2)… ¿Captáis la idea?
Y: indica el número de la partición. 1,2,3… Ejemplo: segunda partición del primer disco (hd0,2); segunda partición del tercer disco (hd2,2)… ¿Captáis la idea?
- El segundo campo a modificar es el UUID (el código de números y letras tan largo), que todavía apunta a la partición vieja. Lo cambiamos por el UUID de la nueva partición (recordad que esto lo podéis consultar en GParted, por ejemplo). ¡Revisad bien los datos!
- La tercera modificación, y una de las más importantes, está relacionada con el pequeño rectángulo rojo que hay debajo del UUID, y que pone en la imagen “sdb2″. Ahí es donde tenéis que indicar la nueva partición de vuestro root que, por lógica, ha de corresponderse con (hdX,Y). Ejemplos: (hd0,1) –> sda1 // (hd2,3) –> sdc3
Tened en cuenta que estos cambios, en principio, hay que repetirlos
en función del número de entradas de nuestro sistema operativo presentes
en el Grub. Yo tengo tres entradas de Chakra, por tanto he de cambiar
esos datos 3 veces. Sin embargo, os aconsejo que cambiéis solo
la primera entrada y, una vez que veáis que todo arranca correctamente,
procedáis a modificar las restantes, ya desde vuestro sistema operativo
real.
8 ) Solventado el asunto del Grub, pasamos al fstab.
sudo kate /etc/fstab
Buscamos el UUID de / y lo cambiamos por el nuevo, tal y como hicimos en el paso anterior. Guardamos.
9) Ya podemos reiniciar y comprobar que todo está en orden.
Si el sistema operativo funciona bien, podemos proceder a reemplazar
los datos que dejamos sin cambiar en las entradas restantes del archivo
grub.cfg, así como a borrar la vieja partición root -si tal es nuestro
deseo-.
Eso es todo por hoy.
Tomado de: http://blog.desdelinux.net/mover-la-particion-root-a-otro-disco/
No hay comentarios:
Publicar un comentario