viernes, 26 de abril de 2013

Mover sistema operativo de partición -GNU/Linux-

Hace tiempo tenía Ubuntu funcionando en un disco duro externo además de otros sistemas en mi ordenador (una netbook Asus eeePC). Con el tiempo he querido integrar Ubuntu en éste y dedicar el disco duro externo a labores de almacenaje. Esto supone, como indica el título, mover el sistema operativo de partición. Por si a alguien le sirve y para mí mismo, voy a dejarlo por escrito en la web.
El proceso es asombrosamente sencillo una vez que lo conoces. Yo tengo varias distribuciones ÑÚ instaladas, por lo que no me hace falta arrancar con un LiveCd para realizar los cambios. Puedo hacerlo arrancando desde otra distribución. Y digo distribución porque, por fin, no hay software privativo en mi máquina. Si no dispones de esta solución, usa un LiveCD. La cosa es usar Gparted, que también tiene LiveCd y otras soluciones propias. Una vez dentro, seleccionas la partición que quieres mover y la copias a través de las opciones que te ofrece el menú, accesible desde diferentes lugares de la aplicación. Para pegar y que comience el copiado, la partición de destino debe ser un "espacio sin asignar", así denomina Gparted a los espacios donde no hay formato, no hay nada en ellos. Aquí puedes ver a lo que me refiero. Si no es así, la partición de origen no se pegará. 
Bien, ya hemos copiado la partición. Ahora hay que escribir, en los archivos que se encargan del arranque, las órdenes a seguir para iniciar el sistema desde las nuevas ubicaciones. Así que vamos al archivo /etc/fstab del sistema copiado y cambiamos los UUID's (Universal Unique IDentifier) que allí encontramos. Para saber ese dato abres Terminal, te identificas como superusuario "root" con el comando sudo -i y una vez aparece el símbolo # en el prompt, tecleas blkid. Aparecerán los UUID's de todos tus dispositivos (ejemplo). Cambias los anteriores por los actuales, indicando también la partición /home que le asignes y la SWAP, si cambió de sitio.
Siguiente paso: modificar el grub.cfg (/boot/grub/grub.cfg), cambiando sólo los lugares donde aparece la ubicación de la partición de arranque anterior. Seguramente encontrarás algo parecido a bla, bla, bla (hdx,msdosx). Las "x" ocupan el lugar de tu anterior partición de arranque. Ahora, en todos los lugares del archivo, cambias esos números por los que corresponden a la partición que será la raíz ahora. Ten en cuenta que hdx define el disco donde está situado la partición pero se empieza a contar a partir de cero, con lo que el disco principal es hd0. Para msdos puedes contar la partición tal cual, si está en sda7 pones msdos7. Recuerda siempre que hace falta ser usuario "root" para hacer cambios en esos archivos, localizar los archivos grub.cfg y fstab apropiados al sistema que quieres modificar y pulsar "guardar" siempre antes de salir para que el cambio se efectúe.
Antes de intentar arrancar, ve al sistema que gestiona el grub y actualiza éste. En Ubuntu y derivados de Debian es "sudo update-grub". De este modo, aparecerá la nueva distribución que has añadido. Es aconsejable que, si el sistema que has copiado está en otro disco, como era mi caso, lo desenchufes del ordenador para evitar arrancarlo por error. Si sabes hacerlo, también sería bueno que realizaras alguna modificación en el grub.cfg, en "menuentry", para que puedas diferenciar un sistema de otro por su nombre.

No sé si el problema que yo he tenido a continuación ocurrirá siempre pero aquí viene la tirita por si alguien sufre una herida. Yo no podía entrar en Ubuntu porque al identificarme en la pantalla de entrada, llamada lightDM, se ponía negra, parecía que iniciaba el sistema, pero me expulsaba otra vez al mismo sitio. Tuve la gran suerte de no dar muchas vueltas buscando la solución. Primero intenté esto y luego encontré esto otro, que fue lo que ya me permitió entrar como siempre. Pongo los dos intentos porque en principio sería, creo yo, suficiente con el segundo pero, si no puedes entrar, haz también el primero. No sé si influyó haberlo hecho antes...
Una vez que compruebas que todo el proceso ha sido exitoso, puedes borrar el sistema primero o usarlo como respaldo, ahí ya entramos en los gustos y necesidades de cada uno.
Y hasta aquí hemos llegado. Si es de ayuda, me alegraré muchísimo.