Liberar la Swap (memoria de intercambio) en Linux desde la terminal

Todos los ordenadores cuentan con memoria RAM, el cual es un componente vital para su funcionamiento. Ésta puede ser de distintas velocidades, funcionar con más o menos latencia y tener diferente capacidad. Los sistemas operativos demandan de una cantidad de memoria dependiendo de los programas que tenga instalados por defecto, su entorno gráfico, efectos etc.

Es por ello que a la hora de descargar una distribución, entre los requisitos mínimos se encuentra una cierta cantidad de memoria RAM, para asegurar que el sistema va a funcionar correctamente con los programas que tiene ya instalados, lo que no asegura que vaya a hacerlo con aplicaciones más pesadas.

Por ejemplo, Ubuntu, una de las distribuciones más descargadas, requiere 1GB de RAM como mínimo, y 3 o más GB para funcionar de forma idónea. De lo contrario, tendríamos ralentizaciones cuando hayamos abierto muchos programas.

Cuando la RAM se llena

Bueno, y todo esto, qué tiene que ver con la memoria Swap? Muy sencillo. Cuando las aplicaciones llenan la memoria RAM, éstas empezarán a usar la memoria Swap, la cual es mucho más lenta, ya que depende de nuestro disco duro o SSD, el cual es mucho más lento. Incluso en los primeros discos SSD, que el sistema emplee la memoria Swap podía reducir la vida útil del disco debido a su lectura y escritura constante.

En ordenadores con muy poca memoria RAM, se va a utilizar bastante la memoria de intercambio, sobretodo si hemos instalado un sistema que emplea demasiados recursos. Sin embargo, si disponemos de 16, 32 o 64GB es muy posible que el sistema nunca haga uso de ella.

El tamaño de la memoria Swap

Cuando se instala el sistema operativo, se crea una partición que es un área de intercambio, la cual debe de ser aproximadamente del tamaño del 20% del total de memoria RAM que dispongamos en el ordenador.

 

 

Por ejemplo, si disponemos de un total de 8GB de RAM, el tamaño de la memoria Swap debe de ser de unos 2GB. Podemos incrementar o reducir este tamaño y ponerlo como queramos, incluso podemos prescindir de ella, aunque no es aconsejable. Esto está explicado en el tutorial sobre cómo crear particiones separadas.

Liberar la Swap desde la terminal

Hemos comentado que, cuando el sistema se queda sin memoria RAM, empieza a usar la Swap. Existen comandos en la terminal los cuales nos permiten ver la cantidad de memoria de intercambio que se está empleando, y podemos limpiarla, aunque ésto se haga automáticamente cuando reiniciamos el equipo. Para ver la cantidad de memoria Swap que se está utilizando, podemos emplear el siguiente comando:

cat /proc/swaps

El cual nos devolverá un resultado como el siguiente:

 

 

Aquí, podemos ver que /dev/sda2 es la partición donde se encuentra la memoria Swap. En size se muestra el tamaño total asignado, en nuestro caso son 8GB, y en Used se muestra el uso de esta memoria.

Para poder liberar esta memoria Swap, tenemos que ejecutar el siguiente comando:

swapoff -a && swapon -a

Entonces, veremos cómo «Used» estará en 0, es decir, no estará consumiendo espacio en esta memoria.

 

Eso es todo, si te ha gustado el artículo, no dudes en enviar tus opiniones a través de los comentarios.

4 comentario en “Liberar la Swap (memoria de intercambio) en Linux desde la terminal

  1. Ya sé que se pueden hacer las particiones del disco duro, pero yo el ordenador lo uso para trabajar y tengo los programas pertinentes para ello que pesan lo suficiente para no poder hacer la partición del disco duro. Ya lo probé, lo he intentado y normalmente es lo que hacemos al tener un Mac, pero estudiando lo que estudio y trabajando en lo que trabajo es un poco difícil que el ordenador tenga capacidad suficiente para albergar dos sistemas operativos.

  2. me ha servido de mucho, ya que en ocasiones cuando ejecuto varias maquinas virtuales la memoria RAM se llena por poco tiempo, utilizando la memoria Swap, pero esta no se libera de forma automática.

  3. Y en el caso de que es un servidor, que no puedo o mejor dicho no deberia reiniciarlo, y los procesos que corren en la swap si aplico el comando puedo matar procesos que pueden afectar data de la empresa, ¿como se pudiera liberar la swap por procesos? es decir matando los procesos que se que no comprometerian la data de la empresa.

    Gracias.

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *