Archivo de swap versus partición de swap en GNU Linux 5

Archivo de swap versus partición de swapUna de las novedades de Ubuntu 17.04 será que en vez de usar una partición de Swap usará un archivo de Swap. Esto se ha anunciado a bombo y platillo como si hubieran descubierto las Americas y la realidad es que no tiene nada novedoso.

En Linux hace muchísimos años que existen los archivos de Swap. Y si hasta el momento ninguna de las distros los ha usado será por algo.

¿POR QUÉ UBUNTU QUIERE USAR UN ARCHIVO DE SWAP?

Pienso que el único motivo es facilitar la vida a los usuarios más noveles.

Usar un archivo de Swap no aporta ninguna ventaja técnica ni absolutamente nada nuevo. Incluso me atrevería a decir que técnicamente es una solución peor por los siguientes motivos.

ANÁLISIS DE LOS ARCHIVOS DE SWAP VERSUS LAS PARTICIONES DE SWAP

En principio no existe ninguna diferencia de rendimiento entre un archivo de Swap y una partición de Swap.

No obstante el archivo de Swap es técnicamente peor ya que presenta o puede presentar los siguientes inconvenientes.

El archivo de Swap puede presentar fragmentación

Si creamos un archivo de Swap cuando tenemos el disco duro muy lleno existen posibilidades que creemos un archivo de Swap fragmentado.

Si el archivo de Swap está fragmentado implica que la paginación en disco se hará de forma más lenta perdiendo rendimiento.

Por este motivo tenemos que tener en cuenta los siguientes aspectos:

  1. Si tenemos el disco duro lleno y necesitamos más Swap lo más conveniente es crear una partición de Swap.
  2. No se recomienda ampliar un archivo de Swap. Si andamos cortos de memoria Swap lo ideal es crear una partición Swap o crear un archivo nuevo de Swap con una prioridad de uso baja.

Analizando el caso de Ubuntu este punto no será un problema porque la partición se crea en el momento que instalamos el sistema operativo. Por lo tanto los bloques que conformarán la partición Swap serán contiguos y no existirá fragmentación.

Nota: Una partición Swap nunca tendrá problemas de fragmentación.
Nota:  Este apartado solo afecta a la gente que usa discos duros mecánicos

La velocidad de escritura y lectura es muy similar

La escritura en una partición de Swap es directa sin tener que seguir todo el proceso para escribir en un sistema de archivos.

En cambio en un archivo de Swap el proceso de escritura es sobre un sistema de archivos. No obstante todo este proceso es gestionado de forma especial por el Kernel de Linux.

El kernel de Linux mapea en todo momento lo que hay en el archivo de Swap. A partir de aquí entra y sale contenido de la memoria Swap de forma directamente omitiendo todas las restricciones que supone la escritura en un sistema de archivos.

La partición de Swap permite aprovechar mejor el espacio en el disco duro

En el caso que usemos varias distros en el mismo equipo podemos usar la misma partición Swap en todas las distros. De esta forma podemos ahorrar espacio en disco.

En cambio si usamos archivos de Swap cada distro tendrá que usar su propio archivo de Swap provocando que necesitamos más espacio en nuestro disco duro.

Hoy en día este punto no es muy importante porque normalmente las capacidades de nuestros discos duros es elevada y siempre podemos usar dispositivos de almacenamiento externos o la nube.

El archivo de swap es menos seguro frente posibles apagones y fallos imprevistos

Se que es forzar mucho la máquina, pero si usamos un archivo de Swap hay más posibilidades que se corrompa el sistema de ficheros en caso de un apagón o de un fallo imprevisto.

No podemos saber la posición que ocupa el archivo de Swap en el disco

Existen usuarios que crean la partición swap al inicio de sus discos duros. Lo hacen así por que las velocidades de transferencia en el inicio del disco son mayores.

La práctica que acabo de citar solo es aplicable si usamos particiones de swap. Si usamos un archivo de swap no podremos controlar la posición en el disco duro en que se crea el espacio de intercambio.

Los archivos de Swap son más flexible

Obviamente los archivos de swap son más flexibles que las particiones de swap.

Los archivos de swap permiten cambiar su tamaño o crear nuevos archivos de forma extremadamente fácil, sencilla y rápida.

CONCLUSIONES

La principal ventaja de una partición de Swap es que nunca tendrá fragmentación y su funcionamiento es más adecuado técnicamente hablando.

Los puntos fuertes de un archivo de Swap serán su flexibilidad y la facilidad que por ejemplo pueden proporcionar a los usuarios noveles que usen Ubuntu 17.04. Si el archivo de swap se crea en un sistema fresco y con suficiente espacio en el disco duro tendrá el mismo rendimiento que una partición swap. Además cada año que pasa los espacios de intercambio son menos necesarios porque los ordenadores disponen de más memoria RAM.

Los archivos de swap no me parecen la opción técnica más adecuada. No obstante los archivos de swap funcionan de forma adecuada y considero que son útiles en casos en los que una partición de swap se nos quede corta.

Lo que quiere realizar Ubuntu no supondrá ninguna afectación en el rendimiento de esta distribución. Además el archivo de Swap seguro que facilitará la vida a los usuarios que usen por primera vez el sistema del pingüino.

5 Comentarios en “Archivo de swap versus partición de swap en GNU Linux

  1. Responder Jose Dic 28,2016 18:19

    Creo que el articulo esta mal redactado, es decir confuso.

    Ejemplo con el problema de fragmentacion, luego aparece una nota que dice: Nunca tendrá fragmentación, así también pasa en otras dos secciones, hago el comentario como crítica constructiva

    • Responder Joan Carles Dic 28,2016 19:44

      Hola Jose

      El artículo está redactado de forma correcta. Si crees que se contradice entonces será porque no comprendes el contenido.

      En resumen una partición de Swap nunca tendrá fragmentación.

      Un archivo de swap puede presentar fragmentación. Si el archivo de swap se genera cuando instalas el sistema o con un disco con espacio no hay problema, pero si lo generas cuando tu disco duro está lleno entonces tendrás un archivo de swap con fragmentación.

      Todo esto que te he comentado solo es válido para discos duros mecánicos porque les SSD no tienen fragmentación.

      Saludos y felices fiestas.

  2. Responder Jhim Dic 28,2016 19:45

    Muy Coherente y cierta toda la explicación, pero en mi experiencia personal me ha ido muy bien con los archivos SWAP mejor que con las particiones, la explicación:

    1. Creando Archivos puedes crear una SWAP con tamaño dinámico y agrandar o empequeñecer ese tamaño, mientras que con las Particiones Ya el tamaño esta establecido..

    2. no es cierto que el tamaño de los archivos vaya aumentando, los archivos SWAP tiene un tamaño establecido fijo y si se quiere añadir mas espacio al SWAP se debe crear otro archivo con su tamaño fijo, y montarlo al sistema como una partición SWAP, la forma en la que se monta este archivo en el sistema es la misma forma en la que se montan las particiones, pues para que queden fijos estos archivos al sistema, al final serán incluidos en el fstab.

    3. En mi experiencia ocurrió lo siguiente, Instale Linux con 4gb de RAM y 500 Mb de SWAP, en poco tiempo eso se empezó a llenar por culpa de google-chrome. entonces para no molestar la pequeña partición SWAP y tratar de cambiar el tamaño lo que hice fue añadir un Archivo SWAP de 500 Mb, al ver que era poco, luego pude añadir otro archivo de 2Gb, y así puede dinámicamente, agrandar o no el tamaño para la SWAP cosa que no podria hacer con la partición, pues tendría que entrar a crear particiones adicionales o modificar la que ya existe..

    Lo mejor de todo es que no se pierde espacio, pues si aumento mi RAM físicamente por ejemplo a 16 o 32Gb puedo borrar los archivos de SWAP y recupero mi espacio..

    Me imagino que Ubuntu entendió este paradigma, en el cual se puede usar dinámicamente los archivos SWAP y si se necesita mas, simplemente crear otro archivo y añadirlo o agrandar el archivo swap que no lleva muchos segundos..

    La partición SWAP se supone debería de dar mayor rendimiento, pero que hacer cuando se llena la SWAP y la RAM y el espacio no es suficiente, pues empezar a jugar con los Archivos SWAP y aumentar la SWAP..

    Incluso si tienes un VPS, y en algún momento se queda corta la memoria, puedes simplemente crear un archivo y añadirlo al SWAP y no tener que pedir soporte tecnico, modificar particiones o aumentar la RAM..

    Es tan versátil el uso de los archivos SWAP, que puedes crear un script y si en algun momento tu sistema llega a menos del 10% de memoria libre + SWAP, crear y montar automáticamente un archivo SWAP, por ejemplo de 500 mb en /tmp, para que al reiniciar se desaparezca este archivo..

    Por ultimo tengo que informar que uso un disco SSD, si no talves no estaría de acuerdo con los archivos SWAP.

    • Responder Joan Carles Dic 28,2016 20:05

      Hola Jhim

      Tienes razón. Los archivos de Swap en Linux no son dinámicos. En los repositorios de mi distro he encontrado el paquete swapspace que hace el espacio de intercambio dinámico, pero creo que el proyecto está abandonado. Lo corregiré. Veremos que tipo de archivo genera Ubuntu. Si quieren facilitar la vida a sus usuarios pienso que deberían hacer un espacio de intercambio dinámico.

      Referente al resto de comentarios hay alguno en que no acabo de estar conforme.

      Agrandar archivos de Swap no es para nada recomendable en discos duros mecánicos. El caso que comentas con Ubuntu es muy raro. Yo solo tengo 3GB de RAM y nunca lleno la memoria swap. Haciendo un uso normal consumiré 100 o 200 MB como mucho. Si haces una partición de Swap generosa nunca la llenarás. 500MB es un espacio insuficiente, pero todo depende del uso que hagas del ordenador.

      Creando un archivo de Swap pierdes espacio si o si, y cuantas más distros uses en un equipo más perderás.

      En el caso del servidor VPS es una solución para que el servidor no se cuelgue, pero lo que deberás hacer a corto plazo es incrementar tu RAM.

      Sin duda disco SSD ayuda a que tu experiencia con el uso del espacio de intercambio sea positiva. En un disco mecánico no lo es.

      Saludos

  3. Responder Miguel Mayol Tur Dic 30,2016 14:34

    – A partir de 4 Gbs el uso de la partición swap (que monitoreo siempre)es testimonial para un uso doméstico que es a los que la configuración por defecto va destinada.

    – Cuando salió Ubuntu era normal que existiesen PCs con 1/2 Gb, y 1 Gb era lo mas habitual y por eso la swap era necesaria

    – Ahora 4Gbs es casi lo mínimo que un PC decente monta, así que siendo al swap menos crítica para el rendimiento de la computadora es lógico que ahorren la partición, y dejen el archivo, que casi que solo se usará para hibernaciones y poco mas en la mayoría de casos.

Deja un Comentario