[ << ]
[ < ]
[ Inicio ]
[ > ]
[ >> ]
4. Preparando los discos
Contenido:
4.a. Introducción a los dispositivos de bloque
Dispositivos de bloque
Examinaremos de forma detallada los aspectos de Gentoo Linux así como
Linux en general que tengan que ver con discos, sistemas de ficheros
de Linux, particiones y dispositivos de bloque. Una vez estemos
familiarizados con las entrañas de los discos y sistemas de ficheros,
veremos el proceso de creación de particiones y sistemas de ficheros
en una instalación Gentoo Linux.
Para empezar, explicaremos el término dispositivos de
bloque. Quizás el dispositivo de bloque más conocido es el que
representa la primera unidad IDE llamada /dev/hda en un
sistema Linux. Si la máquina utiliza discos SCSI entonces el primer
disco duro se denominará /dev/sda.
Los dispositivos de bloque mencionados anteriormente representan una
interfaz abstracta del disco. Los programas de usuario pueden hacer uso
de estas interfaces para interactuar con el disco sin importar el tipo
de unidad que se trate: IDE, SCSI, o cualquier otra. El programa puede
simplemente dirigirse al almacenamiento en el disco como a una serie
de bloques de acceso aleatorio de 512-bytes situados de forma contigua.
Particiones
Aunque teóricamente es posible utilizar el disco duro completo para
albergar la instalación Linux, esto casi nunca se hace. En su lugar,
los discos se dividen en dispositivos de bloque más pequeños y
manejables. En muchos sistemas se llaman particiones.
4.b. Diseño de un esquema de particionamiento
Esquema de particionamiento por defecto
Si no queremos diseñar un esquema de particionamiento específico para
el sistema, podemos hacer uso del esquema utilizado en este manual:
| Partición NewWorld |
Partición OldWorld |
Partición Pegasos |
Partición RS/6000 |
Sistema de ficheros |
Tamaño |
Descripción |
| /dev/hda1 |
/dev/hda1 |
(No aplicable) |
(No aplicable) |
(Mapa de particionamiento) |
32k |
Apple_partition_map |
| /dev/hda2 |
(No necesario) |
(No aplicable) |
(No aplicable) |
(bootstrap) |
800k |
Apple_Bootstrap |
| (No aplicable) |
(No aplicable) |
(No aplicable) |
/dev/sda1 |
(PReP Boot) |
800k |
Tipo 0x41 |
| (No aplicable) |
/dev/hda2 (Si se usa quik) |
/dev/hda1 |
(No necesario) |
ext2 |
32MB |
Partición de arranque (boot) |
| /dev/hda3 |
/dev/hda2 (/dev/hda3 usando quik) |
/dev/hda2 |
/dev/sda2 |
(swap) |
512M |
Partición de intercambio (swap), Tipo 0x82 |
| /dev/hda4 |
/dev/hda3 (/dev/hda4 usando quik) |
/dev/hda3 |
/dev/sda3 |
ext3, xfs |
Resto del disco |
Partición raíz (root), Tipo 0x83 |
Nota:
Puede haber algunas particiones llamadas: Apple_Driver63,
Apple_Driver_ATA, Apple_FWDriver, Apple_Driver_IOKit, Apple_Patches.
Si no estamos pensando en usar MacOS 9 podemos borrarlas, puesto que
MacOS X y Linux no las necesitan. Para borrarlas se puede utilizar tanto
parted o borrar el disco entero inicializando el mapa de particiones.
|
Aviso:
parted es capaz de redimensionar particiones. En el CD de
Instalación se incluyen parches para redimensionar sistemas de
ficheros HFS+. Desafortunadamente no se puede redimensionar sistemas
de ficheros HFS+ con transacciones (journaling), incluso si se ha
desactivado la transaccionalidad en Mac OS X. ¡Todo lo que se redimensione
con parted queda bajo la responsabilidad de uno mismo! ¡Hay que asegurarse
de tener copia de seguridad de los datos!
|
Si queremos conocer el tamaño que debería tener una partición, o
incluso cuantas particiones necesitamos, hay que continuar con la
siguiente sección. En caso contrario, seguiremos con Por defecto: Uso de mac-fdisk (Apple) para
particionar el disco o Alternativa: Uso de
parted (IBM/Pegasos) para particionar el disco.
¿Cuántas y de qué tamaño?
El número de particiones que se necesitan depende mucho del entorno
particular. Por ejemplo, si la máquina tiene muchos usuarios, lo más
probable es que se quiera tener /home en una partición
separada para facilitar las tareas de copia de respaldo y aumentar la
seguridad. Si se está instalando Gentoo para funcionar como servidor
de correo, deberemos tener /var sobre una partición
separada ya que es allí dónde se almacena todo el correo. Asímismo,
una buena elección del sistema de ficheros optimizará el rendimiento
del equipo. Los servidores de juegos deben disponer de una
partición/opt ya que la mayoría de juegos se instalan en
ese directorio. Las razones para todas estas recomendaciones son similares
a aquellas que hemos mencionado para el caso de /home:
seguridad y salvaguarda de datos. Definitvamente querremos tener un gran
/usr: no sólo contendrá la mayor parte de aplicaciones, también
el árbol de Portage que por si mismo ocupa alrededor de 500 MB sin incluir
las fuentes que igualmente se almacenan en él.
Como se puede ver, todo dependerá de lo que queramos conseguir. Tener
particiones o volúmenes separados tiene las siguientes ventajas:
-
Elegimos el mejor sistema de ficheros para cada partición o volumen
-
El sistema en su totalidad no se quedará sin espacio si una
herramienta o aplicación está escribiendo datos de forma continua en
el volumen o partición
-
Si es el caso, el tiempo dedicado a las comprobaciones de integridad
de sistemas de ficheros se reduce, ya que las comprobaciones pueden
ser llevadas acabo en paralelo (sin embargo esta ventaja es mayor
con múltiples discos que con múltiples particiones)
-
La seguridad puede ser mejorada montando algunas de las particiones
en modo sólo lectura, nosuid (los bits setuid se ignoran), noexec
(los bits de ejecución se ignoran), etc.
Sin embargo, tener múltiples particiones tiene una gran desventaja: si la
configuración no es la adecuada, podemos acabar teniendo mucho espacio
libre en una de las particiones y quedarnos sin espacio en
otras. Además, existe un límite de 15 particiones para SCSI y SATA.
4.c. Por defecto: Uso de mac-fdisk (Apple) para particionar el disco
Ahora es el momento de crear las particiones con mac-fdisk:
Listado de Código 3.1: Inicio de mac-fdisk |
# mac-fdisk /dev/hda
|
Primero borraremos las particiones que no nos sirven para dejar espacio a
las particiones Linux. Usamos d en mac-fdisk para borrarla(s).
Nos preguntará por el número de partición a borrar. Normalmente la primera
partición de máquinas NewWorld (Apple_partition_map) no debe ser borrada.
Segundo, crearemos una partición Apple_Bootstrap usando
b. Nos preguntará cuál es el bloque inicial. Introduciremos el
número de la primera partición libre seguido de una p. En este
caso sería 2p.
Nota:
Esta partición no es una partición /boot. Linux no
la utilizará para nada; no deberemos crear ningún sistema de ficheros
en ella y no deberemos montarla nunca. Los usuarios de Apple no
necesitan una partición extra para /boot.
|
Ahora crearemos una partición de intercambio presionando c. De
nuevo, mac-fdisk preguntará cuál es el bloque en el que
queremos que esta partición comience. Como anteriormente hemos usado
2 para crear la partición Apple_Bootstrap, ahora tendríamos que
teclear 3p. Cuando nos pregunte por el tamaño, indicaremos
512M (o el tamaño que queramos, aunque se sigue recomendando
512MB) Cuando nos pida el nombre, introduciremos swap
(obligatorio).
Para crear la partición raíz, teclearemos c, seguido de
4p para indicar el bloque en el que la partición debe
comenzar. Cuando nos pregunte el tamaño volveremos a poner
4p. mac-fdisk interpretará esto como "Usa todo el
espacio disponible". Y cuando nos pregunte el nombre, indicaremos
root (obligatorio).
Para finalizar, escribiremos la estructura de particiones en el disco
tecleando w y saldremos de mac-fdisk con q.
Nota:
Para asegurarnos de que todo está correcto, deberíamos ejecutar
mac-fdisk una vez más y comprobar que se muestran todas las
particiones. Si no aparece ninguna de las particiones creadas o los
cambios realizados, tendríamos que reinicializarlas pulsando
"i" en mac-fdisk. Esto recreará el mapa de particiones
borrándolas todas.
|
Ahora que las particiones ya están creadas continuaremos con Creación de los sistemas de ficheros.
4.d. Uso de parted (especialmente Pegasos) para particionar el disco
parted, por "Partition Editor", puede actualmente
manejar las particiones HFS+ empleadas por MacOS y MacOS X. Con esta
herramienta se pueden redimensionar éstas y así hacer espacio para las
particiones Linux. Sin embargo, el ejemplo siguiente sólo describe el
particionamiento para sistemas Pegasos.
Empecemos iniciando parted:
Listado de Código 4.1: Iniciando parted |
# parted /dev/hda
|
Si el disco está sin particionar, ejecutaremos mklabel amiga
para crear una nueva etiqueta para el disco.
En parted, podemos escribir print en cualquier momento para
mostrar la tabla de particiones en memoria. Si por cualquier razón
cambiamos de criterio o cometemos un error podemos pulsar
Ctrl-c para salir de parted sin guardar ningún cambio.
Si en el Pegasos también queremos instalar MorphOS deberemos crear un
sistema de ficheros affs1 llamado "BI0" (BI cero) al
comienzo del disco. 32MB serán más que suficientes para almacenar el
núcleo de MorphOS. Si disponemos de un Pegasos I o pretendemos usar
reiserfs o xfs, también tendremos que almacenar el núcleo de Linux en
dicha partición (Pegasos II sólo puede arrancar de una partición
ext2/ext3 o affs1). Para crear la partición ejecutaremos mkpart
primary affs1 START END donde START y END deben
reemplazarse por un rango en megabytes (por ejemplo, 0 32 crea
una partición de 32MB empezando en 0MB y acabando en 32MB).
Además necesitamos crear dos particiones para Linux, una como sistema
de ficheros raíz para todos los programas, etc., y otra como partición
de intercambio. Para crear el sistema de ficheros raíz debemos decidir
primero que tipo vamos a utilizar. Las opciones disponibles son ext2,
ext3, reiserfs y xfs. Si no sabemos qué elegir usaremos
ext3. Ejecutando mkpart primary ext3 START END se crea una
partición ext3. Nuevamente, hay que reemplazar START y
END con las marcas de inicio y fin (en megabytes) de la
partición.
Generalmente se recomienda crear una partición de intercambio con el
doble de la RAM instalada en el ordenador. Probablemente será
suficiente con una partición de intercambio más pequeña a no ser que
queramos ejecutar bastantes aplicaciones al mismo tiempo (en cualquier
caso, se recomienda un mínimo de 512MB). Para crear la partición de
intercambio ejecutaremos mkpart primary linux-swap START END.
Anotaremos los números (minor numbers) de las particiones puesto que
los necesitaremos durante el proceso de instalación. print
permite mostrarlos. Accederemos a los dicos mediante
/dev/hdaX donde X se reemplaza con el número de la
partición.
Cuando esté todo listo en parted saldremos simplemente con
quit.
4.e. Creación de los sistemas de ficheros
Introducción
Ahora que las particiones ya están creadas, es el momento de crear un
sistema de ficheros en ellas. Si no nos importa el tipo de sistema de
ficheros a utilizar podemos utilizar la elección por defecto propuesta
en Creación de un sistema de ficheros
en una partición. En caso contrario, a continuación se describen
los sistemas de ficheros que podemos utilizar ...
¿Sistemas de ficheros?
Disponemos de varios sistemas de ficheros. ext2, ext3, ReiserFS y XFS se
consideran estables en la arquitectura PPC.
ext2 es un sistema de ficheros Linux probado, pero no dispone
de soporte para transacciones, lo que significa que las comprobaciones
rutinarias al arrancar pueden tardar bastante tiempo. En la
actualidad, hay muchas opciones alternativas, sistemas de ficheros de
nueva generación con soporte para transacciones cuya integridad puede
ser verificada con mayor rapidez, por lo que gozan de mayor
popularidad. Los sistemas de ficheros transaccionales previenen
retrasos durante el inicio del equipo, incluso cuando el sistema de
ficheros está en un estado inconsistente.
ext3 es la versión transaccional de ext2, proporcionando
soporte para una rápida recuperación además de otros modos mejorados
de funcionamiento como registro completo y ordenado de datos. ext3 es
un buen y fiable sistema de ficheros. Posee una opción adicional para
indización basada en árboles B que proporciona un alto rendimiento en
casi todas las situaciones. Podemos habilitar esta indización añadiendo
-O dir_index al comando mke2fs. En resumen, ext3 es un
excelente sistema de ficheros.
ReiserFS es un sistema de ficheros B*-tree (basado en árboles
balanceados) que tiene un gran rendimiento y que sobrepasa con creces
a ext2 y ext3 cuando se trata de trabajar con ficheros pequeños
(archivos menores de 4KB), en ocasiones diez o quince veces
mejor. ReiserFS es extremadamente escalable y soporta
transaccionalidad. Desde la versión 2.4.18+, ReiserFS es sólido y
estable para su uso en escenarios genéricos así como en casos extremos
cuando es necesario trabajar por ejemplo con sistemas de ficheros
grandes, utilizar múltiples ficheros pequeños o manejar archivos
grandes y directorios con miles y miles de
ficheros.
XFS es un sistema de ficheros transaccional que cuenta con un
juego de características robustas y está optimizado para ser
escalable. Sólo recomendamos el uso de este sistema de ficheros para
aquellas plataformas Linux que dispongan de dispositivos de
almacenamiento SCSI de alto rendimiento y/o almacenamientos de canal
de fibra (en inglés, fiber channel) con sistema de alimentación
ininterrumpida. Como XFS realiza un almacenamiento temporal agresivo
de datos en tránsito en RAM, aquellas aplicaciones con defectos de
diseño (aquéllas que no toman las precauciones necesarias durante la
escritura de datos al disco, y hay bastantes) pueden perderlos en caso
de que el sistema se apague de forma inesperada.
Creación del sistema de ficheros en una partición
Para crear un sistema de ficheros en una partición o volumen existen
herramientas específicas para cada sistema de ficheros:
| Sistema de Ficheros |
Comando de Creación |
| ext2 |
mke2fs |
| ext3 |
mke2fs -j |
| reiserfs |
mkreiserfs |
| xfs |
mkfs.xfs |
Por ejemplo, para formatear la partición root (/dev/hda4
según el ejemplo) en formato ext3 (siguiendo el ejemplo) utilizaríamos:
Listado de Código 5.1: Creación de un sistema de ficheros en una partición |
# mkfs.ext3 /dev/hda4
|
Ahora podríamos crear todos los sistemas de ficheros en las
particiones o volúmenes lógicos recién creados.
Nota:
En máquinas Pegasos II la partición que contiene el kernel debe ser ext2
o ext3. Los sistemas NewWorld pueden arrancar desde sistemas de ficheros
ext2, ext3, XFS, ReiserFS e incluso HFS/HFS+. En las máquinas OldWorld que
arranquen mediante BootX, el núcleo debe ser ubicado en una partición HFS,
pero esto se completará al configurar el gestor de arranque.
|
Activando la partición de intercambio
mkswap es el comando usado para inicializar particiones de
intercambio:
Listado de Código 5.2: Inicialización de una partición de intercambio |
# mkswap /dev/hda3
|
Para activar la partición, se usa el comando swapon:
Listado de Código 5.3: Activación de una partición de intercambio |
# swapon /dev/hda3
|
Ahora crearíamos y activaríamos la partición de intercambio.
4.f. Montaje
Ahora que las particiones están inicializadas y albergan sistemas de
ficheros, es hora de montarlas. Utilizaremos el comando
mount. No hay que olvidarse de crear los puntos de montaje
necesarios para cada partición creada. Como ejemplo crearemos un punto
de montaje y montaremos la partición de raíz en él:
Listado de Código 6.1: Montaje de particiones |
# mkdir /mnt/gentoo
# mount /dev/hda4 /mnt/gentoo
|
Nota:
Si queremos que /tmp resida en una partición diferente,
hay que asegurarse de cambiar sus permisos después de haberla montado:
chmod 1777 /mnt/gentoo/tmp. Lo mismo se aplicaría a
/var/tmp.
|
También hay que montar el sistema de ficheros proc (la interfaz
virtual del núcleo) en /proc. Pero primero necesitaremos
situar nuestros ficheros en las particiones.
Ahora continuaremos con Instalación de
los ficheros de instalación de Gentoo.
[ << ]
[ < ]
[ Inicio ]
[ > ]
[ >> ]
El contenido de este documento, a no ser que se especifique
expresamente, está registrado bajo los términos de la licencia
CC-BY-SA-2.5. Se aplican las
Pautas de
Utilización del logotipo y nombre de Gentoo.
|