Saltar la navegación

Particionado del disco

Para poder instalar GNU/Linux, debemos hacerle sitio en el disco duro. Este espacio en el disco debe estar separado del que utilizaran otros sistemas operativos que pudiéramos tener instalado en nuestro ordenador, como Windows, MacOS, etc. Esto se consigue dedicando una o más particiones a nuestro GNU/Linux.

El particionado de un disco simplemente se refiere a la acción de dividir el disco en secciones. Cada sección es independiente de las otras. Esto es equivalente a crear tabiques en una casa, si añadimos mobiliario a una habitación, esto no afectará al resto de habitaciones.

Si ya tenemos un sistema operativo instalado y queremos meter GNU/Linux en el mismo disco, probablemente necesitaremos reparticionarlo. Este proceso es muy delicado y se puede perder información por el camino, por eso deberíamos siempre crear copias de seguridad antes de hacer un reparticionado del disco. Usando la analogía de la casa, probablemente desearemos trasladar todo el mobiliario de en medio antes de mover una pared de sitio o correremos el riesgo de destruirlo.

Como mínimo, GNU/Linux necesita una partición para funcionar. Se puede tener una sola partición para alojar a todo el sistema operativo, aplicaciones y nuestros ficheros personales. En muchas ocasiones se piensa que tener una partición de intercambio también es necesario, pero esto no es estrictamente cierto. La partición de intercambio o swap, es un espacio en sí dentro del sistema operativo, el cual le permite al sistema usar el disco como memoria virtual. Al crear una partición de intercambio separada, GNU/Linux puede hacer un uso mucho más eficiente de ésta. Es posible forzar a GNU/Linux para que use un fichero como espacio de intercambio, pero no es recomendable por su menor eficiencia.

La mayoría de los administradores eligen usar más de una partición para la instalación de GNU/Linux. Un motivo para hacer esto es por seguridad, es decir, si algo ocurriera y se dañara una parte del disco (físicamente o lógicamente), generalmente solo afectaría a una partición. Así, solo tendremos que reponer una parte del sistema utilizando las copias de seguridad. Como mínimo, deberíamos crear lo que habitualmente se llama una partición raíz, la cual contiene los componentes esenciales del sistema.

La instalación de GNU/Linux en varias particiones puede también evitar el colapso del sistema en situaciones de funcionamiento extremo del software, por ejemplo, un servidor de correo que recibiera una gran cantidad de correo no deseado, podría llenar fácilmente el disco, quedando el sistema inutilizable por falta de espacio, en el supuesto de que todo esté en una única partición. Si colocamos el directorio /var/mail (es donde se guardan los correos) en una partición separada, por lo general el sistema seguirá funcionado perfectamente, a pesar de que la partición asignada a guardar el correo se llene, pues el sistema principal tiene espacio en su propia partición.

En GNU/Linux, los nombres de los discos y de las particiones son diferentes a los usados en otros sistemas operativos. La siguiente lista los describe:

  • La primera unidad de disco flexible se llama /dev/fd0.
  • La segunda unidad de disco flexible se llama /dev/fd1.
  • La primera unidad de disco SCSI (incluye los discos SATA y los discos USB) se llama /dev/sda.
  • La segunda unidad de disco SCSI se llama /dev/sdb, y así sucesivamente.
  • La primera unidad de un CD-ROM SCSI se llama /dev/scd0, también denominada como /dev/sr0.
  • El disco maestro en el controlador IDE primario se llama /dev/hda.
  • El disco esclavo en el controlador IDE primario se llama /dev/hdb.
  • El disco maestro en el controlador IDE secundario se llama /dev/hdc.
  • El disco esclavo en el controlador IDE secundario se llama /dev/hdd.

Las particiones en cada disco son representadas añadiendo un número al nombre del disco: /dev/sda1 y /dev/sda2 representan a la primera y segunda partición en la primera unidad de disco SCSI, SATA o USB.

GNU/Linux denomina a las particiones primarias y a la única extendida que puede existir, con el nombre del dispositivo más un número del 1 al 4. Por ejemplo, la primera partición en la primera unidad IDE es /dev/hda1. Las particiones lógicas son enumeradas empezando desde el número 5, independientemente del número de particiones primarias que se utilicen, de forma que la primera partición lógica en el mismo disco anterior es /dev/hda5. Hay que recordar que con la partición extendida, es decir, la partición primaria que contiene las particiones lógicas, no se puede trabajar como con el resto de las particiones, pues no es una partición de datos.

Resumamos lo anterior con un ejemplo. Supongamos que tenemos un sistema con 2 discos SATA. El primer disco se llamará entonces /dev/sda y el segundo /dev/sdb. Si el dispositivo /dev/sda tiene 5 particiones (dos primarias y tres lógicas); suponemos que las dos primeras son las primarias y se llamarían /dev/sda1 y /dev/sda2; la tercera partición primaria sería la extendida  y se llamaría /dev/sda3, pero como hemos dicho antes, no se puede usar como partición de datos, es solo una contenedora de particiones lógicas; las tres particiones lógicas contenidas en /dev/sda3 se llamarían /dev/sda5, /dev/sda6 y /dev/sda7.

Hay un aspecto en GNU/Linux que al principio puede parecer complicado y es la forma en la que el sistema operativo accede y usa las particiones. En Windows es relativamente fácil, pues cada una de las particiones obtiene una letra de unidad y se usa dicha letra para referirse a los archivos o directorios de la partición. Esto es completamente distinto a como GNU/Linux maneja las particiones. La diferencia principal es que cada partición se integra en el sistema de almacenamiento para formar parte de un único juego de archivos y directorios. Esto se consigue asociando una partición con un directorio mediante un proceso conocido como montaje. Montar una partición significa disponer de su capacidad de almacenamiento comenzando en un directorio específico denominado punto de montaje.

Por ejemplo, si la partición /dev/hda5 estuviera montada en /usr, significaría que todos los archivos y directorios bajo /usr estarían físicamente alojados en /dev/hda5. Por lo tanto, el archivo /usr/doc/FAQ/txt/Linux-FAQ estaría almacenado en /dev/hda5, mientras que el archivo /etc/X11/gdm/Sessions/Gnome no lo estaría. Continuando con el ejemplo, también es posible que uno o más directorios bajo /usr fueran puntos de montaje para otras particiones, de forma que si una partición, digamos /dev/hda7, estuviera montada en /usr/local, querría decir que, el fichero /usr/local/man/whatis residiría en /dev/hda7 y no en /dev/hda5.

Montaje con varios dispositivos

Existen varios comandos y aplicaciones para particionar y reparticionar un disco:

fdisk Comando de consola.  
cfdisk Comando de consola.
gparted   Aplicación gráfica.

Podemos consultar el particionado actual de todos los discos del sistema con el comando fdisk y la opción -l:

# fdisk -l

Disco /dev/sda: 931,5 GiB, 1000204886016 bytes, 1953525168 sectores
Unidades: sectores de 1 * 512 = 512 bytes
Tamaño de sector (lógico/físico): 512 bytes / 4096 bytes
Tamaño de E/S (mínimo/óptimo): 4096 bytes / 4096 bytes
Tipo de etiqueta de disco: dos
Identificador del disco: 0xfe337e85

Device     Boot      Start        End    Sectors   Size Id Type
/dev/sda1  *          2048    1026047    1024000   500M  7 HPFS/NTFS/exFAT
/dev/sda2          1026048  307199999  306173952   146G  7 HPFS/NTFS/exFAT
/dev/sda3        307200000 1908762623 1601562624 763,7G 83 Linux
/dev/sda4       1908762624 1953523711   44761088  21,4G 82 Linux swap / Solaris

Disco /dev/sdb: 14,5 GiB, 15518924800 bytes, 30310400 sectores
Unidades: sectores de 1 * 512 = 512 bytes
Tamaño de sector (lógico/físico): 512 bytes / 512 bytes
Tamaño de E/S (mínimo/óptimo): 512 bytes / 512 bytes
Tipo de etiqueta de disco: dos
Identificador del disco: 0x29fe0864

Device     Boot Start      End  Sectors  Size Id Type
/dev/sdb1          63 30308543 30308481 14,5G  c W95 FAT32 (LBA)

 

Licencia: licencia de software libre GPL