![]() |
![]() |
Mover tu instalación de Linux a otra particiónAl tener un disco particionado, y muchas veces compartiendo con otros sistemas operativos, ocurre que necesitamos cambiar nuestras particiones. En algunos casos para darle mas espacio a una partición o porque queremos borrar aquel otro sistema operativo que ya no necesitamos. O talvez moverla a otro disco duro. Primero necesitamos ver claramente como queremos tener distribuido nuestro sistema operativo. Recuerden que Linux por lo menos necesita 2 particiones, una para Linux y otra para la swap. Es recomendable tener más particiones como por ejemplo una partición para /boot, y si quieren en otros casos para los programa /usr/local/, pero no es necesario todo se puede poner todo dentro de una partición. Para hacer el cambio de particiones es necesarios una de dos cosas, o que ya se tenga una partición vacÃa en el disco duro primario o que se tenga un disco duro secundario (hdb), el cual debe estar conectado. HerramientasLas herramientas que tenemos para particionar generalmente son el fdisk y el cfdisk, son herramientas comunes en todas las distribuciones de Linux, generalmente si ya instalaste Linux debes haberlas usado, aunque en algunas distribuciones al instalar te dan particionando y no tienes idea como esta tu disco duro. Las herramientas para formatear particiones son mke2fs, mke2fs -j, mkreiserfs, mkfs.xfs y mkfs.jfs. Para más información de estas herramientas puedes ver sus respectivos manuales con el comando "man" desde consola. Siempre es útil y en este caso es necesario tener un disco de arranque, un livecd o los discos de instalación de tu distribución. EjemploLa partición que voy a mover va a estar en el disco primario o master (hda) y vamos a suponer que tengo dividido el disco de la siguiente manera: /dev/hda1 S.O. no Linux /dev/hda2 swap /dev/hda3 / Digamos que quiero eliminar la partición de ese S.O. no Linux y quiero usar todo el espacio que queda para mi la partición raÃz o root de Linux. Montar un disco secundario y formatear una particiónEn este caso lo que voy a usar es un disco duro secundario (hdb), para ahà copiar mi partición Linux temporalmente. Suponiendo que el disco esta nuevo o vacÃo vamos a particionarle, Ojo no copien su partición Linux a una partición en fat ya que estas no guardan los permisos, necesitamos que se mantengan los mismos permisos de antes. Por lo tanto solo deben copiarle a una partición de algún formato soportado por y para Linux ya sea ext2, ext3, reiserfs, xfs, jfs. Primero nos cambiarnos a root $su - Para particionar el disco #cfdisk /dev/hdb o #fdisk /dev/hdb Creamos una partición con el suficiente espacio para albergar todo nuestra antigua partición. Y luego le formateamos con cualquiera de los formatos a elección. (Digamos ext3) #mke2fs -j /dev/hdb1* * Para el ejemplo asumà que la primera partición del disco esclavo es a donde vamos a copiar todo. Una vez ya formateada, le montamos en el lugar de elección, yo prefiero crear una carpeta nueva para dentro del directorio /mnt. que se llame hdb1 #mkdir /mnt/hdb1 Ahora le montamos al disco secundario en la carpeta #mount /dev/hdb1 /mnt/hdb1 Listo, ahora ya estamos listos para copiar las carpetas con sus respectivos permisos. Puedes hacerlo desde comando usando cp o desde el midnight commander, pero como súper usuario o root, Usando cpAntes que nada leer el manual de cp #man cp Lo que nos interesa es las opciones de -p para preservar sus atributos, permisos, grupos y usuarios., también las opciones para copiar recursivamente como -r o -R. Para copiar la carpeta no es recomendable hacer cp -R -p / /mnt/hdb1, porque se duplicarÃa todo lo que esta montado en /mnt/hdb1, es preferible hacerlo carpeta por carpeta desde la raÃz. #cp -R -p /bin /mnt/hdb1 #cp -R -p /boot /mnt/hdb1 #cp -R -p /dev /mnt/hdb1 .... Para la carpeta /mnt, debe ser creada con los mismo atributos dentro de /mnt/hdb1, y copiar el resto de carpetas que están adentro de /mnt a /mnt/hdb1 excepto por /mnt/hdb1. Para cambiar los permisos, grupos y usuarios a los que pertenece tienes las herramientas chmod, chown, chgroup. Usando midnight commander o mcSi usas el mc debes asegurarte al copiar las carpetas que este marcado preservar atributos o preserve atributtes. Después de copiar todos los archivos asegurémonos que tengas los permisos correspondientes, entra a las carpetas, verifica si se copio bien. Puedes usar "ls -al" lo cual te lista los archivos y carpetas dentro de una carpeta con sus respectivos permisos. Ejemplo #cd /etc #ls -al y luego #cd /mnt/hdb1/etc #ls -al y comparas los permisos. Si solo querÃas cambiar tu instalación de Linux a otro disco duro puedes saltarte el siguiente paso. Reparticionar el discoLo siguiente es reparticionar el disco primario, si es que no están listas ya las particiones. Ahora en el caso en el que yo planteé, si borramos las particiones del disco primario o master no podemos seguir trabajando o no nos va dejar hacerlo, por eso es importante tener un disco, un livecd o un cd de instalación de tu distribución. En mi caso yo tengo slackware, arranco con el cd de slackware y este me permite re-particionar como si lo fuera a instalar por primera vez. desde un livecd deberÃan poder hacer lo mismo y estoy casi seguro que pueden hacerlo en con casi cualquier distribución. Y asà poder acceder a herramientas como el fdisk o el cfdisk Ojo no arranquen desde su partición ya establecida, asegúrense que arranque desde el cd, como si lo fueran a instalar. Ejemplo del disco reparticionado: /dev/hda1 swap /dev/hda2 / Seguramente te toca reiniciar la máquina e ingresas de nuevo como si fueras a instalar. Ahora le formateas a las particiones de acuerdo a tu gusto, pero a la swap debes activarla como swap Creas la firma de swap #mkswap /dev/hda1 Y copias de nuevo lo que tenÃas en el disco secundario o esclavo (hdb) a la partición o particiones que gustes, pero asegúrate que se copien los permisos. Modificar el fstabDebes modificar el archivo /etc/fstab, aquà generalmente solo debes cambiar el número de las particiones de acuerdo a tu caso, Antes /dev/hda2 swap swap defaults 0 0 /dev/hda3 / ext3 defaults 1 1 .... Ahora /dev/hda1 swap swap defaults 0 0 /dev/hda2 / ext3 defaults 1 1 .... Si creaste otras particiones que no están listadas aquÃ, como crear una boot deberÃas aumentar una lÃnea como esta de acuerdo a como le hayas creado. /dev/hdaX /boot exts2 defaults 1 2 .... .... También puedes ver el manual del fstab para más información (man fstab) Aun no esta instalado bien el arranque, si tenÃan lilo o grub o cualquier otro no esta especificado donde deberÃa estar el arranque. El siguiente paso se podrÃa hacer montando las particiones y cambiándonos con el chroot, env-update, source, pero voy usar la salida para newbies. Reiniciamos la máquina con el cd, pero en este caso debemos especificar donde esta la raÃz, en el caso de slackware se hace asà root=/dev/hda2 noinitrd Este parámetro me deja arrancar desde el cd especificando donde esta la raÃz. Toda distribución tiene alguna forma de hacerlo. Gestores de ArranqueGrubSi tenÃan grub pueden modificar el archivo /etc/grub.conf que es un symlink para el archivo /boot/grub/grub.conf. Ahora en el grub deben encontrar la parte donde dice root, esto indica que partición tenÃan marcada como la raÃz "/" de linux y deben modificarla de acuerdo a su raÃz. Grub maneja las particiones de la siguiente forma hdX ,Y , siendo X el número del disco duro esclavo o master, y Y el número de la partición. Y estos números comienzan desde cero, ejemplo /dev/hda1 es llamado (hd0 ,0 ), para el caso del ejemplo expuesto anteriormente seria (hd0,1). Ya una vez modificado utilizamos el comando #grub-install o hacer lo siguiente si no funciona grub-install que es la instalación manualmente, entrando al shell de grub. Desde consola ejecutamos como root: #grub >root (hdX ,Y ) // Especificamos donde reside la partición /boot >setup (hd0) //Instala grub en la mbr >quit //Sale de la shell de grub LiloCon lilo es bastante simple, encontraran que el archivo de configuración es /etc/lilo.conf Busquen las lÃneas que se refieren a su instalación de lilo e indiquen donde se encuentra root. Para el ejemplo serÃa root=/dev/hda2, a diferencia del grub deben especificar donde se encuentra la raÃz no la partición boot. Para finalizar ejecuten desde consola lilo # lilo Y listo, ya pueden reiniciar. La marca registrada Linux (R) se usa siguiendo la sublicensia obtenida del "Linux Mark Institute", el LICENCIATARIO exclusivo de Linus Torvalds, propietario de la marca en EEUU y otros paises The registered trademark Linux (R) is used pursuant to a sublicense from the Linux Mark Institute, the exclusive LICENSEE of Linus Torvalds, owner of the mark in the U.S. and other countries Powered by phpBB © 2001, 2002 phpBB Group |