[ anterior ] [ Resumen ] [ Nota de Copyright ] [ Contenidos ] [ siguiente ]

Instalación de Debian GNU/Linux 2.1 para Intel x86 - Capítulo 4
Particionado del disco duro


4.1 Trasfondo

El particionado de su disco simplemente se refiere al acto de dividir su disco en secciones. Cada sección es independiente de las otras. Esto es equivalente crear muros en una casa; si añade mobiliario a una habitación, esto no afectará a cualquier otra habitación.

Si ya tiene un sistema operativo en su sistema (Windows95, Windows NT, OS/2, MacOS, Solaris, FreeBSD) y quiere meter Linux en el mismo disco, probablemente necesite reparticionar el disco. Generalmente, cambiar la tabla de particiones con un sistema de ficheros ya creado destruirá toda la información que éste contenga. Por esto debería siempre crear copias de seguridad antes de hacer un reparticionado. Usando la analogía de la casa, probablemente desee mover todo el mobiliario de enmedio antes de cambiar una pared o correrá el riesgo de destruirlo. Afortunadamente, hay una alternativa para algunos usuarios; vea Reparticionado sin pérdida de datos al iniciar desde DOS, Win-32 u OS/2, Sección 4.6.

En una instalación mínima, GNU/Linux necesita una partición para sí mismo. Puede tener una sola partición conteniendo todo el sistema operativo, aplicaciones y sus archivos personales. La mayoría de la gente considera que la partición de intercambio (swap) también es una necesidad, aunque ésto no es estrictamente cierto. El ``swap'' es un espacio reservado para el sistema operativo, que le permite usar el almacenamiento menos costoso en disco como ``memoria virtual''. Poniendo el swap en su propia partición, Linux puede hacer un uso más eficiente del mismo (es posible forzar a Linux para que use un archivo como swap, pero no se recomienda).

En cualquier caso, la mayoría de la gente escoge proporcionar a GNU/Linux más del número mínimo de particiones. Hay dos razones para dividir el sistema de ficheros en un número de particiones más pequeñas. La primera es por seguridad. Si algo corrompe el sistema de ficheros, normalmente sólo se verá afectada una partición. Así sólo debe restaurar (desde las copias de seguridad que ha estado manteniendo) una porción de su sistema. Como mínimo debe considerar crear lo que se denomina ``partición raíz'' (root partition). Ésta contiene los componentes esenciales del sistema. Si cualquier otra partición se corrompe, aún podrá iniciar GNU/Linux para arreglar el sistema. Esto puede salvarle de la necesidad de reinstalar el sistema.

La segunda razón es generalmente más importante en un negocio, pero realmente depende del uso de la máquina. Suponga que algo pierde el control y comienza a comerse el espacio de disco. Si el proceso causante del problema tiene privilegios de superusuario (el sistema preserva un porcentaje de disco no disponible para usuarios), puede quedarse súbitamente sin espacio. Esto no es nada bueno puesto que el SO necesita usar ficheros reales (además del espacio swap) para muchas cosas. Puede incluso no ser un problema de origen local. Por ejemplo, un bombardeo de correo electrónico puede fácilmente llenar una partición. Usando más particiones, proteje al sistema de algunos de estos problemas. Usando el correo como ejemplo de nuevo, poniendo /var/spool/mail en su propia partición, el grueso del sistema funcionará incluso si está siendo bombardeado por correo-e.

Otra razón aplicable si tiene un disco IDE grande, y no usa ni mapeado LBA, ni controladores enmascaradores (a veces proporcionados por los fabricantes de disco duro). En este caso, tendrá que poner la partición raíz en los primeros 1024 cilindros de su disco duro (habitualmente unos 524 megabytes).

La única desventaja real de usar más particiones es que es con frecuencia difícil saber por anticipado cuáles serán sus necesidades. Si hace una partición demasiado pequeña tendrá que reinstalar el sistema, o estará constantemente moviendo cosas de sitio para hacer espacio en la partición de poco tamaño. Por otro lado, si hace la partición demasiado grande, estará desaprovechando espacio que podría ser usado en otra parte. El espacio de disco es barato actualmente, pero ¿por qué tirar su dinero?


4.1.1 Limitaciones de disco en el PC

La PC BIOS generalmente añade limitaciones adicionales al particionado del disco. Hay límite para el número de particiones ``primarias'' y ``lógicas'' que puede contener una unidad de disco. Además hay límites sobre la unidad desde la que puede arrancar la BIOS. Puede encontrar más información en Linux Partition HOWTO, aunque esta sección incluirá un resumen para ayudarle a planificar la mayoría de las situaciones.

Las particiones ``primarias'' son el esquema original de particionado para los discos de PC. No obstante, sólo pueden haber cuatro de este tipo. Para superar esta limitación, se idearon las particiones ``extendidas'' o ``lógicas''. Estableciendo una de sus particiones primarias como de tipo extendida, puede subdividir el espacio de dicha partición en particiones lógicas. No hay limitaciones en el número de particiones lógicas que puede crear; en cualquier caso, sólo puede tener una partición extendida como máximo por unidad.

Linux limita las particiones por unidad a 15 particiones para discos SCSI (3 particiones primarias posibles, 12 particiones lógicas), y 63 particiones en una unidad IDE (3 particiones primarias posibles, 60 particiones lógicas).

El último aspecto que debe conocer sobre la PC BIOS es que su partición de arranque, aquella que contiene la imagen de su kernel, debe estar contenida en los primeros 1024 cilindros de la unidad. Puesto que la partición raíz es habitualmente su partición de arranque, debe asegurarse de que su partición raíz queda en los primeros 1024 cilindros.

Si tiene un disco grande, puede que quizás tenga que usar técnicas de traducción de cilindros, que puede configurar en si BIOS, como el modo de traducción LBA. Puede encontrar más información sobre asuntos de discos grandes en Large Disk HOWTO. Si está usando un esquema de traducción de cilindros, entonces su partición de arranque debe quedar en la representación traducida del cilindro número 1024.


4.2 Nombres de dispositivo en Linux

Los nombres de discos y de particiones Linux son diferentes que en otros sistemas operativos. Necesita conocer los nombres que Linux usa al particionar. Aquí tiene el esquema básico de nombres:

Las particiones de cada disco se representan añadiendo un número decimal al nombre del disco: ``sda1'' y ``sda2'' representan a la primera y segunda partición de la primera unidad de disco SCSI de su sistema.

Un ejemplo de la vida real. Asumamos que tiene un sistema con 2 discos SCSI, uno en la dirección SCSI 2 y el otro en la dirección SCSI 4. El primer disco (en la dirección 2) se llama entonces ``sda'', y el segundo ``sdb''. Si la unidad ``sda'' tiene 5 particiones, éstas se llamarán ``sda1'', ``sda2'', ..., ``sda5''. Lo mismo se aplica al disco ``sdb'' y sus particiones.

Nótese que si tiene dos adaptadoras de bus SCSI (como controladoras), el orden de las unidades puede prestarse a confusión. La mejor solución en este caso es mirar los mensajes de arranque, asumiendo que conoce los modelos de sus unidades.

Linux representa las particiones primarias con el nombre de la unidad, seguido de un número del 1 al 4. Por ejemplo, la primera partición primaria de la primera unidad IDE sería /dev/hda1. Las particiones lógicas se numeran a partir del 5, por lo que la primera partición lógica en la misma unidad sería /dev/hda5. Recuerde que la partición extendida, que sería la partición primaria conteniendo las particiones lógicas, no es utilizable por sí misma.


4.3 Esquema de particionado recomendado

Como se describía arriba, debería tener una partición root más pequeña, y una partición /usr más grande, si tiene espacio. Para ejemplos, vea más abajo. Para la mayoría de los usuarios, las dos particiones mencionadas inicialmente son suficientes. Esto es especialmente apropiado cuando simplemente tiene un disco pequeño, puesto que dividiéndolo en muchas particiones se puede desaprovechar el espacio.

En algunos casos, puede necesitar una partición /usr/local por separado si planea instalar muchos programas que no formen parte de la distribución Debian. Si su máquina va a funcionar como servidor de correo, puede necesitar crear una partición para separar /var/spool/mail. Con frecuencia, poner /tmp en su propia partición, con por ejemplo de 20 a 32MB, es una buena idea. Si está configurando un servidor con muchas cuentas de usuario, es generalmente bueno tener una partición grande para /home. Por regla general, las situaciones de particionado varían de un sistema a otro dependiendo de su uso.

Para sistemas muy complejos, debería ver Multi Disk HOWTO. Contiene información en profundidad, la mayor parte de interés para los ISPs (proveedores de Internet) y la gente que configura servidores.

Con respecto al asunto del tamaño de la partición de intercambio, hay diferentes puntos de vista. Una regla guía que funciona es usar tanta memoria swap como la memoria de su sistema, quizás la mayoría de usuarios no necesiten más de 64MB de swap. Tampoco debería ser menor de 16MB, prácticamente. Por supuesto, hay excepciones a esa regla. Si intenta resolver 10000 ecuaciones simultáneamente en una máquina con 256MB de memoria, puede necesitar un gigabyte (o más) de swap.

Tenga en cuenta que Linux para su arquitectura no usará mas de 128 megabytes de swap en una misma partición. De todos modos, puede hacer múltiples particiones a mano y editar /etc/fstab después de la instalación para obtener más de 128 megabytes de intercambio. Si sus requerimientos de swap son tan grandes, probablemente debería repartir el swap entre diferentes discos (también llamados ``spindles''). O puede probar con los kernels Linux más recientes (2.2 y superiores) donde se ha abandonado esta limitación (sea cuidadoso, esto puede requerir otros cambios en su sistema).


4.4 Ejemplos

Como ejemplo, la máquina doméstica del autor tiene 32MB de RAM y una unidad IDE de 1.7GB en /dev/hda. Hay una partición DOS de 500MB en /dev/hda1 (debería ser de 200MB puesto que nunca se usa). Una partición de swap de 32MB en /dev/hda3 y el resto (sobre 1.2GB en /dev/hda2) es la partición Linux.


4.5 Particionado anterior a la instalación

Hay dos momentos en los que puede particionar: anteriormente a la instalación de Debian, o durante la instalación de Debian.


4.5.1 Particionado desde DOS o Windows

Si está manipulando particiones existentes FAT o NTFS, se recomienda que use bien el esquema de abajo bien las utilidades nativas Windows o DOS. En caso contrario, no es realmente necesario particionar desde DOS o Windows; las utilidades de particionado Linux generalmente harán un buen trabajo.


4.6 Reparticionado sin pérdida de datos al iniciar desde DOS, Win-32 u OS/2

Una de las instalaciones más comunes es en un sistema que ya contiene DOS (incluyendo Windows 3.1), Win-32 (como Windows 95 y 98 (o NT??)), u OS/2, y se desea poner Debian en el mismo disco sin destruir el sistema anterior. Como se explica en Trasfondo, Sección 4.1, disminuyendo el tamaño de una partición existente seguramente se dañen los datos de la partición a menos que se tomen ciertas precauciones. El método descrito aquí, que no garantiza la protección de sus datos, trabaja muy bien en la práctica. Como precaución, debería hacer un backup.

Antes de hacer nada, debe haber decidido cómo va a dividir el disco. El método de esta sección sólo dividirá una partición en dos piezas. Una contendrá el SO original y la otra será usada por Debian. Como comprenderá, durante la instalación de Debian tendrá la oportunidad de usar dicha porción del disco para Debian, ya sea como swap o como un sistema de ficheros.

La idea es mover todos los datos de la partición al principio, antes de cambiar la información de particionado, con lo que no se perderán datos. Es importante que haga el particionado inmediatamente después de haber movido los datos, para minimizar la posibilidad de que un fichero se pueda escribir cerca del final de la partición, lo que disminuiría la cantidad de espacio que puede recortar a la partición.

Lo primero que se necesita es una copia de fips, disponible en el directorio tools/ de su mirror Debian más cercano. Descomprima el archivo .zip y copie los archivos RESTORRB.EXE, FIPS.EXE y ERRORS.TXT a un disquete de arranque. Un disquete de arranque puede crearse usando el comando sys a: bajo DOS. fips viene con una documentación bastante buena que le conviene leer. Sin duda alguna necesitará leer esta documentación si usa algún controlador de compresión o un administrador de disco. Cree el disco y lea la documentación antes de defragmentar el disco.

El siguiente paso es mover todos los datos al principio de la partición. defrag, que viene de serie con el DOS 6.0 y posteriores puede hacer fácilmente este trabajo. Vea la documentación del fips para una lista de otro software con esta capacidad. Nótese que si usa Windows 95, debe ejecutar defrag desde el mismo, puesto que DOS no puede manejar las tablas de asignación de disco tipo FAT32 usado a veces en Windows 95 y superiores.

Después de ejecutar el defragmentador (que puede tomarse su tiempo en un disco grande), reinicie con el disquete que ha creado conteniendo el fips introducido en la disquetera. Simplemente escriba a:\fips y siga las instrucciones.

Tenga en consideración que hay muchos otros administradores de partición, en el caso de que fips no haga lo que usted necesite.


4.7 Particionado para DOS

Si está particionando para unidades DOS, o modificando el tamaño de particiones DOS, usando utilidades Linux, algunas personas sufren problemas trabajando con las particiones FAT resultantes. Por ejemplo, algunos han informado de bajo rendimiento, problemas consistentes con scandisk, u otros errores por el estilo en DOS o Windows.

Al parecer, es buena idea llenar con ceros los sectores iniciales de una partición cuando crea o redimensiona ésta para el uso desde el DOS. Desde Linux, antes de ejecutar el comando format del DOS, haga:

     dd if=/dev/zero of=/dev/hdXX bs=512 count=4


[ anterior ] [ Resumen ] [ Nota de Copyright ] [ Contenidos ] [ siguiente ]
Instalación de Debian GNU/Linux 2.1 para Intel x86
versión 2.1.11, 28 August, 1999
Bruce Perens
Sven Rudolph
Igor Grobman
James Treacy
Adam Di Carlo