Buenas prácticas en el particionado de GNU/Linux (Parte 1): Lo básico
Cuando nos disponemos a instalar una distribución GNU/Linux en una máquina todos debemos enfrentarnos a la parte del particionado. Recuerdo que cuando empecé a flirtear con GNU/Linux la parte del particionado me provocaba auténtico pavor. Los instaladores de las distribuciones eran confusos, los conceptos totalmente distintos al particionado desde Microsoft Windows y mi miedo a cargarme la partición del sistema de Microsoft constante. Los instaladores de hoy en día ya no son lo que eran, la información viene mejor estructurada, más clara, y para lo bueno y para lo malo existen unos particionados automáticos estupendos destinados a evitar los sudores fríos de los más nuevos en estos ámbitos. Opciones como “Instalar al lado de…” o “Borrar todo el disco e instalar…” nos pueden facilitar mucho la vida a la hora de instalar nuestra distribución, pero también nos ocultan una parte de la instalación, que conociéndola bien, nos puede evitar muchos dolores de cabeza futuros.
Esta serie de post está destinada a conocer lo que hay más allá del particionado guiado y a sacarle partido a las diferentes opciones que se nos presentan cuando particionamos manualmente nuestro sistema.
Los puntos de montaje y el particionado en GNU/Linux respecto a Windows
Realmente de esto no va la entrada, pero lo mencionaré muy rápidamente a modo introductorio y como punto de partida para que quien no sepa como funciona esto, antes de continuar, se documente al respecto. Lo primero que hay que entender antes de ponernos a particionar es como va a gestionar estas particiones el Sistema Operativo. En Windows cuando creas una partición le asignas una letra de unidad y esta está disponible en Mi PC/Equipo, totalmente separada del sistema “raíz”, que es “C:”. En GNU/Linux TODO “cuelga” de /, la raíz del sistema. Cuando creamos una partición nueva deberemos configurar nuestro sistema para que la monte dentro del sistema de ficheros. Si por ejemplo queremos tener una partición llamada “DATOS” para así aislarlos del resto del sistema la montaríamos en /mnt/DATOS, y una vez hecho esto** a todos los efectos esto sería una carpeta más llamada DATOS dentro del sistema**, aunque esté en una partición distinta. Los instaladores de GNU/Linux nos permiten crear particiones y usarlas como puntos de montaje en la instalación. Esto quiere decir que a la hora de instalar, por ejemplo, podemos separar /home del resto del sistema para así mantener nuestros datos aislados. Siguiendo con la comparación con Windows esto sería como crear una partición y cambiar en el registro la ubicación de “Documents and Settings” o “Users” a la partición creada.
AVISO: Recomiendo que si lo anteriormente explicado es muy nuevo para vosotros indaguéis un poco en el tema antes de seguir con la entrada.
La estructura de directorios en sistemas GNU/Linux
Conocer la estructura de directorios en los sistemas GNU/Linux va a hacer que podamos decidir qué directorios queremos ubicar en particiones separadas y cuáles no en base a sus funciones y posibles peligros de cada uno.
Filesystem Hierarchy Standard (FHS) es el estándar que se sigue en las distribuciones GNU/Linux en cuanto a la distribución y jerarquía de los directorios. Si bien cada distribución “adapta” un poco este estándar a su medida, en líneas generales todas lo cumplen en gran parte.
Recomiendo echar un vistazo a la estructura de directorios del estándar puesto que conocer dicho estándar nos va a generar una vista global de cómo están distribuidos los archivos en nuestro sistema operativo y nos ayudará a tomar decisiones a la hora de realizar el particionado. Si bien algunos de ellos serán tocados en esta entrada, es conveniente tener una idea general de toda la estructura para nuestro manejo diario con el sistema.
Ventajas del particionado en sistemas GNU/Linux
El particionado de sistemas GNU/Linux no es un capricho ni son ganas de complicar las cosas porque sí, la separación de los puntos de montaje ofrece muchas ventajas que pueden hacer que sea una opción a considerar para nosotros. Estas son algunas de ellas:
- Protección contra errores físicos del disco: Cuanto más particionado tengamos nuestro sistema de archivos más estamos aislando el daño que podría provocar un error físico de nuestro disco y mayores serán las opciones de recuperar información.
- Podemos montar ciertas particiones con datos que no van a ser modificados como “solo lectura”, con esto nos aseguraremos que ciertos ficheros críticos no serán modificados accidentalmente.
- Separando directorios donde se almacenan datos variables evitaremos que eventualmente estos directorios crezcan descontroladamente y ocupen todo el espacio en disco, pudiendo comprometer el sistema entero.
- Al ser particiones distintas podremos utilizar sistemas de ficheros distintos, pudiendo escoger sistemas más rápidos o más fiables según el tipo de operación que se realizará en dicho punto de montaje.
- Si tenemos particiones separadas podremos** cifrarlas individualmente** sin necesidad de cifrar el disco entero. Esto puede ser particularmente útil si por ejemplo queremos solamente cifrar nuestros datos de usuario.
El particionado más básico en sistemas GNU/Linux
Cuando en la instalación de nuestras distribuciones usamos un particionado guiado, por norma general, nos propondrá lo básico e imprescindible para poder instalar un sistema GNU/Linux:
- “/”: La partición raíz es el punto más alto de nuestro árbol de directorios, de donde colgarán todas las demás carpetas, por lo tanto parte absolutamente imprescindible dentro de nuestro sistema.
- Swap: El espacio de intercambio o swap es una zona del disco que se utilizará para descargar la memoria RAM en caso de que esta esté muy llena. Probablemente alguien llegue aquí y le salten todas las alarmas, ya que lo de que la Swap es “básica e imprescindible” no es del todo cierto. Con las cantidades de memoria RAM que calzan los ordenadores actuales podemos tener un sistema perfectamente operativo sin memoria Swap, no obstante es una práctica recomendable más aún teniendo en cuenta el tamaño de los discos duros actuales.
Mínimo particionado recomendado, la partición /home
Considero que en todo sistema, ya sea basado en Linux o en Windows, es necesario separar los datos del sistema operativo sea cual sea el rol que este vaya a desempeñar. En caso de fallo del sistema, reinstalación, actualización o algún error físico es importante saber que los datos están aislados del sistema y que ante un eventual fallo del mismo podremos acceder a ellos.
En el anteriormente citado FHS podemos observar que el directorio destinado al almacenamiento de los datos de los usuarios es /home, de modo que una práctica absolutamente recomendable sería la de separar /home en otra partición. Esto es bastante matizable porque es posible que, por ejemplo, necesitemos compartir nuestros datos en un sistema dual boot con Windows, por lo que querremos montar la partición en ntfs. En este caso lo más aconsejable sería crear una partición ntfs y montarla bajo /mnt o /media y trabajar desde allí.
Teniendo esto en cuenta, ya podemos definir el mínimo particionado recomendado para nuestro sistema:
- “/”: La raíz del sistema operativo.
- Swap: La swap del sistema.
- /home, /mnt o /media: Datos de los usuarios.
Hasta aquí la parte más básica del particionado en GNU/Linux, en la siguiente entrada analizaremos las carpetas dentro de FHS susceptibles de ser separadas y enumeraremos los casos en los que esto puede ser beneficioso para nosotros.