Renuncia de responsabilidad:
La versión original de este artículo fue publicada por IBM
developerWorks y es propiedad de Westtech Information Services. Este
documento es una versión actualizada del artículo original y contiene
mejoras introducidas por el Equipo de Documentación de Gentoo.
Este documento carece de soporte activo.
|
Particionamiento en acción, Parte 1
1.
Mover /home
Introducción
La partición /home es una de las particiones que se mueven con más
frecuencia. A veces, llegamos a ocupar todo el espacio en /home, y
se requiere un disco duro adicional. Otras veces, /home está
configurada para formar parte de la partición raíz, y necesita ser movida para
mejorar el rendimiento o para facilitar las copias de seguridad. En cualquiera
de estas circunstancias, mostraré cómo mover /home de forma segura
y eficiente.
Aviso:
La siguiente técnica describe cómo mover partición(es). Aunque esta técnica
está diseñada para que uno pueda regresar sobre sus pasos de un fallo al
moverla, no protege de errores de usuario. En otras palabras, siempre que uno
formatea particiones o se copia gran número de archivos, existe la posibilidad
de teclear un comando equivocadamente y causar la pérdida de muchos datos. Por
esta razón, se recomienda encarecidamente tomar todos pasos necesarios
adecuadamente para hacer una copia de seguridad de todos los archivos
importantes antes de proceder.
|
Ahora que todo está listo, vamos a mover /home. Los pasos exactos
a seguir dependerán de si /home reside en su propia partición
separada, o de si se encuentra dentro de la partición raíz. Hay que tener ésto
presente según indicamos los pasos (se incluyen notas donde es necesario).
Ahora si se está moviendo /home a un nuevo disco duro, este debe
estar instalado en el sistema y en funcionamiento.
Si se está moviendo /home a una partición que ya existe (no
necesita ser ext2, mientras que la partición primaria o extendida de destino
exista), se puede seguir con el paso 2.
Crear una nueva partición, de ser necesario
Si la nueva partición aún no existe, es necesario crearla usando
(preferiblemente) cfdisk o fdisk. Si la partición no reside en la
primera unidad, es necesario indicarle el nombre del dispositivo como primer
argumento a cfdisk o fdisk. Después de crear la partición
primaria o extendida apropiada, es necesario reiniciar para que la tabla de
particiones pueda releerse correctamente. Esta será la única vez que resulte
necesario reiniciar el sistema.
2.
Crear un sistema de ficheros en la nueva partición
Para crear un sistema de ficheros en la nueva partición, primero hay que
asegurarse de conocer el nombre del dispositivo para la partición (por ejemplo,
/dev/sda5). Si no se está seguro acerca del nombre del dispositivo
hay que parar ahora y ¡hacer una doble comprobación! Después hay que ejecutar
como root:
Listado de Código 2.1: Creación del sistema de ficheros |
# mkfs.ext2 /dev/???
|
En el ejemplo anterior y en los siguientes, ??? ha de reemplazarse
por la partición de destino. Después de ejecutar este comando, la partición de
destino contendrá un sistema de ficheros ext2 vacío.
3.
Montar el nuevo sistema de ficheros en /mnt
Creamos un nuevo directorio llamado /mnt/nuevapart, y después
montamos la nueva partición allí:
Listado de Código 3.1: Montar la partición |
# mount /dev/??? /mnt/nuevapart
|
4.
Pasar a modo mono-usuario
Hemos retrasado este paso al máximo para permitir la mayor disponibilidad del
sistema posible, pero ahora debemos pasar al modo de usuario único, y copiar
los archivos desde /home a /mnt/nuevapart. No se
puede tener ningún fichero abierto en /home y pasar a modo de
un único usuario elimina esta posibilidad:
Listado de Código 4.1: Entrar en modo mono-usuario |
# init 1
|
Si se nos pregunta, debemos entrar la contraseña de root para realizar el
mantenimiento del sistema. Deberíamos tener un intérprete de comandos root
ahora.
5.
Cambiar al directorio /home y copiar los archivos
Hay que teclear lo siguiente:
Listado de Código 5.1: Copiar los archivos |
# cd /home
# cp -ax * /mnt/nuevapart
|
El comando cp -ax copia recursivamente los contenidos de /home
a /mnt/nuevapart, preservando todos los atributos de los
archivos, sin cruzar ningún punto de montaje. Después de que este comando
concluya, /mnt/nuevapart contendrá una copia exacta de todos los
ficheros y directorios contenidos en /home. Si la antigua
/home estaba en su propia partición separada (indicada con otra línea en
/etc/fstab), hay que seguir con el paso
6a. En caso contrario, hay que seguir con el paso
6b.
6.
Usar la nueva partición
6a: /home en su propia partición
Nota:
Estas instrucciones son para sistemas en los que /home ya estaba
en su propia partición dedicada. Si no es este el caso, hay que seguir con el
paso 6b.
|
Desmontamos la vieja partición tecleando:
Listado de Código 6.1: Desmontar |
# cd /
# umount /home
|
Después, desmontamos y volvemos a montar la nueva partición:
Listado de Código 6.2: Remontar la partición |
# umount /mnt/nuevapart
# mount /dev/??? /home
|
Ahora, la nueva partición está disponible como /home y está lista para poder
usarse. Podemos realizar los últimos pasos restantes en modo multi-usuario.
Salimos del modo mono-usuario, para que el sistema esté en funcionamiento de
nuevo, presionando CTRL-D.
Importante:
Después de que el sistema se inicia normalmente, entramos como root y editamos
/etc/fstab para que /dev/??? se monte automáticamente
como /home en lugar de la anterior partición. Por ejemplo, hay que
cambiar esta línea:
|
Listado de Código 6.3: fstab antiguo |
/dev/hda3 /home ext2 defaults 1 2
|
por esta otra:
Listado de Código 6.4: fstab nuevo |
/dev/??? /home ext2 defaults 1 2
|
6b: /home en una partición compartida
Nota:
Estas instrucciones son para sistemas en los que la anterior /home
se encontraba en una partición compartida.
|
Listado de Código 6.5: Mover el directorio |
# cd /
# mv /home /home.anterior
# mkdir /home
# mount /dev/??? /home
|
Importante:
Ahora, abandonamos el modo mono-usuario, presionando CTRL-D. Cuando el
sistema esté en funcionamiento de nuevo, editamos /etc/fstab y
añadimos una línea como la siguiente:
|
Listado de Código 6.6: Editamos fstab |
/dev/??? /home ext2 defaults 1 2
|
De esta forma, la nueva partición se montará correctamente la próxima vez que
reiniciemos el sistema.
7.
Finalizando
Hemos dejado deliberadamente el viejo directorio/partición /home,
sólo por si hubo algún problema al copiar los archivos. Después de verificar
que el sistema está funcionado perfectamente, podemos usar la vieja partición
/home para cualquier otra cosa, o eliminar el directorio
/home.anterior.
Enhorabuena, ¡hemos terminado de mover /home! En el siguiente
truco, reconfiguraremos el sistema para que /tmp y /var
estén en su propia partición compartida. Nos vemos entonces.
Recursos
Acerca del autor
Daniel Robbins vive en Albuquerque, New Mexico. Él fue el Presidente/CEO de
Gentoo Technologies Inc., el Arquitecto Jefe del Proyecto Gentoo y contribuye
como autor de varios libros publicados por MacMillan: Caldera OpenLinux
Unleashed, SuSE Linux Unleashed y Samba Unleashed. Daniel se ha visto
involucrado en el mundo de las computadoras de algún modo desde segundo grado
cuando se expuso al lenguaje de programación Logo y a una potencialmente letal
dosis de Pac Man. Ésto probablemente explica porqué ha sido un artista de
gráficos en SONY Electronic Publishing/Psygnosis. Daniel disfruta pasando el
tiempo con su mujer Mary y con su hija, Hadassah. Se puede contactar con Daniel
en Daniel Robbins.
|