Cómo cambiar el tamaño de intercambio en Ubuntu

Cómo cambiar el tamaño de intercambio en Ubuntu

En esta guía, demostraremos cómo cambiar el tamaño de intercambio en Ubuntu 22.04.

Prerrequisitos:

Para realizar los pasos de esta guía, necesita los siguientes componentes:

  • Un sistema Ubuntu configurado correctamente. Para las pruebas, puede instalar Ubuntu en una máquina virtual usando VirtualBox.
  • Acceso a un usuario no raíz que puede ejecutar los comandos de sudo.

Intercambiar el archivo en Linux

La RAM de la máquina está dividida en trozos por el núcleo de Linux llamado "páginas". Cada vez que se copia una página en un espacio preconfigurado en los dispositivos de almacenamiento secundario (disco duro o SSD en la mayoría de los casos), se llama "intercambio". El espacio dedicado preconfigurado se llama "espacio de intercambio".

La cantidad total de memoria física (RAM) y espacio de intercambio se denomina memoria "virtual".

Es necesario intercambiar?

Hay un par de razones por las cuales se necesita intercambio:

  • Cuando hay una demanda de más memoria de lo que está físicamente disponible, intercambiar páginas menos importantes libera más memoria para el proceso que requiere más memoria.
  • Una gran parte de las páginas utilizadas durante el inicio de un programa puede ver muy poco uso. Intercambiar esas páginas puede liberar más memoria para otras aplicaciones.
  • Si no se asigna espacio de intercambio, si el espacio de la RAM está completamente ocupado, puede hacer que el sistema se bloquee, especialmente los sistemas con espacio de baja RAM.

Sin embargo, el intercambio viene con su propio conjunto de desventajas:

  • En comparación con la RAM, los almacenes secundarios (discos duros, SSD y tal) son extremadamente lentos. Para ponerlo en perspectiva, las velocidades de acceso a RAM se miden en nanosegundos, mientras que las velocidades de acceso al disco se miden en milisegundos.
  • Debido a la diferencia en las velocidades de lectura/escritura, el intercambio es un proceso muy lento. Cuando ocurre mucho intercambio, eventualmente ralentiza el sistema.

Tipos de espacios de intercambio

Encontrarás dos tipos de espacios de intercambio en Linux:

  • Una partición de intercambio dedicada: no se pueden almacenar otros archivos allí.
  • Archivos de intercambio: estos archivos pueden estar en cualquier lugar dentro del sistema de archivos.

Dependiendo del espacio de RAM disponible, el tamaño del espacio de intercambio puede variar. Aquí hay un par de ejemplos:

Intercambiar archivo en Ubuntu

Ubuntu generalmente usa una partición de intercambio dedicada para intercambiar. A menudo, esta partición se crea durante la instalación. Sin embargo, podemos crear y ajustar los archivos de intercambio a voluntad.

Enumerando los espacios de intercambio

El siguiente comando muestra todos los espacios de intercambio que están configurados actualmente:

$ swapon

La lista contiene todos los espacios de intercambio, ambas particiones y archivos de intercambio.

Creación de archivos de intercambio

Una ventaja clave de los archivos de intercambio a través de la partición de intercambio es que el tamaño del archivo se puede alterar fácilmente, cambiando así la cantidad de espacio de intercambio sin tocar las particiones de disco. En esta sección, creamos un nuevo archivo de intercambio y lo agregamos al grupo de intercambio actual.

Primero, cree un archivo en blanco usando el siguiente comando:

$ sudo dd if =/dev/cero of =/new_swap bs = 1m count = 2048

Aquí:

  • El tamaño del archivo se calcula como 1m x 2048 = 2g.
  • Para crear un archivo con un tamaño diferente, cambie el valor del argumento de recuento en consecuencia.
  • El /dev /cero es un dispositivo de bloque especial en el sistema Linux que genera cero bytes cada vez que se lee.
  • Si bien podemos usar otras herramientas como Fallocate para crear el archivo, en algunas situaciones, puede generar problemas. Se discute más en profundidad en esta publicación de Askubuntu.

A continuación, necesitamos establecer los permisos de archivo correctos utilizando el siguiente comando:

$ sudo chmod 600 /new_swap

Ahora, necesitamos formatear el archivo como intercambio usando el siguiente comando:

$ sudo mkswap /new_swap

Finalmente, podemos agregar el archivo al grupo de intercambio.

$ sudo swapon /new_swap

Si la acción es exitosa, el nuevo archivo de intercambio debe aparecer en la lista de espacios de intercambio.

$ swapon

Tenga en cuenta que esta acción es solo temporal. Al reiniciar, el archivo de intercambio ya no se utilizará. Para que sea un cambio permanente, tenemos que actualizar la tabla /etc /fstab con la siguiente entrada:

$ /new_swap swap swap predeterminados 0 0

Verificar el espacio de intercambio gratuito

El siguiente comando imprime la memoria y el uso de intercambio:

$ sudo gratis -h

Eliminar el archivo de intercambio

Para eliminar un archivo de intercambio, primero debemos asegurarnos de que no esté en uso. El siguiente comando desactiva un archivo de intercambio:

$ sudo swapoff -v /

Verifique la lista de espacios de intercambio activos para confirmar el cambio.

$ swapon

Si el archivo de intercambio se declara en /etc/fstab, También tienes que eliminar la entrada. Ahora, el archivo de intercambio es seguro para ser eliminado. Eliminarlo usando el siguiente comando:

$ sudo rm /

Cambiar el tamaño de intercambio

Dependiendo del tipo de espacio de intercambio (partición o archivo), el proceso de cambiar el tamaño de intercambio puede variar.

Cambiar el tamaño de la partición de intercambio

Una partición solo se puede extender si hay espacios no asignados inmediatamente después de ella. De lo contrario, la única otra opción de cambio de tamaño es reducir la partición. También se aplica a la partición de intercambio.

Si está utilizando el escritorio GNOME, la aplicación "Discos" puede ofrecer una idea de la situación.

Alternativamente, podemos usar Gpartado Para visualizarlo.

Como puede ver, la partición de intercambio está directamente al lado de la partición raíz en este sistema. Esto no deja espacio para extender la partición de intercambio.

Sin embargo, se pueden realizar operaciones de reducción y reformateo. Obtenga más información sobre cómo administrar particiones usando FDisk o Gparted. También se necesita el comando reizal2fs para cambiar el tamaño del sistema de archivos existente de acuerdo con la partición redimensionada.

Cambiar el tamaño del archivo de intercambio

Para manipular un archivo de intercambio, primero debemos eliminarlo de la piscina de intercambio. Ejecute el siguiente comando:

$ sudo swapoff /new_swap

Ahora, vuelva a ejecutar el comando DD para aumentar el tamaño del archivo:

$ sudo dd if =/dev/cero of =/new_swap bs = 1g count = 2 oflag = append conv = nonRunc

Aquí, agregamos 2 GB más de espacio al archivo de intercambio. A continuación, reformatamos el archivo como intercambio utilizando el siguiente comando:

$ sudo mkswap /new_swap

Finalmente, podemos habilitar el intercambio:

$ sudo swapon /new_swap
$ swapon

Tenga en cuenta que en ciertas situaciones, tratar de deshabilitar el archivo de intercambio puede resultar en un error como "Swapoff falló: no se puede asignar memoria". En ese caso, hacemos lo siguiente:

  • Crear un nuevo archivo de intercambio con espacio más grande.
  • Adjunte el intercambio más grande al sistema.
  • Eliminar el archivo de intercambio más pequeño y más pequeño.
  • Eliminar la entrada de archivo de intercambio de intercambio anterior de /etc/fstab (si es aplicable).

Conclusión

Discutimos una profundidad demostrada sobre la gestión de los espacios de intercambio en Ubuntu. Discutimos los diversos tipos de espacios de intercambio. Aprendimos a cambiar el tamaño de las particiones de intercambio y cómo trabajar con archivos de intercambio (crear, eliminar y cambiar el tamaño).

Interesado en dominar Ubuntu? Echa un vistazo a la subcategoría de Ubuntu que contiene numerosas guías para ajustar el sistema Ubuntu y usar varias herramientas.

Computación feliz!