intercambio

Este artículo explica cómo pasar de tener una partición de intercambio a un archivo de intercambio. Todo lo que necesitas es crear un archivo de intercambio y activarlo.

En mi máquina de escritorio Ubuntu 18.04 tenía una partición de intercambio bastante grande que quería usar para otros fines, y moví el intercambio a un archivo. Ubuntu 18.04 ya usa un archivo de intercambio por defecto en lugar de una partición de intercambio, sin embargo, actualicé a la última versión de Ubuntu en lugar de hacer una instalación limpia, por lo que mi sistema continuó usando una partición de intercambio. Por lo tanto, tuve que mover el intercambio a un archivo yo mismo.

Como resultado, las siguientes instrucciones fueron probadas en mi escritorio Ubuntu 18.04. Sin embargo, deberían trabajar en cualquier distribución de Linux.

Ten en cuenta que la hibernación (en el disco) ya no funcionará cuando uses un archivo de intercambio. Esto se puede hacer, pero no puedo probarlo porque la reanudación de la hibernación no funcionaba en mi sistema anteriormente para cambiar a un archivo de intercambio, así que simplemente abandoné el uso de la hibernación. Además, la mayoría de las distribuciones de Linux usan suspender (a RAM) en lugar de hibernar (a disco) de forma predeterminada. Si necesitas habilitar la hibernación con un archivo de intercambio, aquí hay información.

1. Desactiva tu partición de intercambio actual.

Para ver la partición de intercambio activo, ejecuta:

swapon -s

El resultado del comando se ve así en mi caso:

Filename    Type        Size       Used   Priority
/dev/sda5   partition   15624188   0      -2

Ahora puedes desactivar el dispositivo de intercambio actual usando este comando:

sudo swapoff /dev/sdXX

Donde /dev/sdXX es el dispositivo listado por el comando swapon -s (en la sección Nombre de archivo – / dev /sda5 en mi caso del ejemplo anterior), así que asegúrese de reemplazarlo con su partición swap.

2. Elimina tu antigua entrada de intercambio del archivo /etc/fstab.

Para eliminar la antigua entrada de intercambio, abre el archivo /etc/fstab como root con un editor de texto y elimina la línea de intercambio. ¡No modifiques nada más en el archivo /etc/fstab! ¡Cambiar cualquier cosa en este archivo puede evitar que tu sistema arranque!

Puedes abrir el archivo con el editor Nano desde la línea de comandos, así:

sudo nano /etc/fstab

Y elimina la entrada que contiene tu información de la partición de intercambio (también puedes comentar la línea agregando un # delante de ella). Como ejemplo, en mi caso, la entrada de intercambio se ve así:

UUID=d1b17f9c-9c5e-4471-854a-3ccaf358c30b none swap sw 0 0

Como puedes ver, la entrada de intercambio debe contener swap y sw, así es como ya sabes qué línea eliminar (o comentar).

Luego presiona Ctrl + O, luego Enter para guardar el archivo. Para salir del editor de Nano después de guardar el archivo, presiona Ctrl + X.

3. Crea un archivo de intercambio.

Para crear un archivo de intercambio de 1GB, usa este comando:

sudo dd if=/dev/zero of=/swapfile bs=1024 count=1048576

Dónde:

  • / swapfile es la ruta y el nombre del archivo de intercambio. Puedes cambiar esto a otra cosa.
  • el número después del conteo (1048576) es igual a 1GB. Increméntalo si quieres usar un archivo de intercambio más grande. Por ejemplo, multiplica este número por 5 si deseas utilizar un archivo de intercambio de 5 GB (por lo tanto, utiliza 5242880 como el valor de conteo = para un archivo de intercambio de 5 GB). 

Si utilizas un nombre y una ruta de acceso de archivo de intercambio diferentes, asegúrate de utilizarlo en lugar de /swapfile en todas las instrucciones que se detallan a continuación.

4. Establecer el permiso del archivo de intercambio en 600.

Úsalo para que otros usuarios no puedan leer tu archivo de intercambio, que puede contener información confidencial.

Para establecer el permiso del archivo de intercambio en 600, usa este comando:

sudo chmod 600 /swapfile

5. Formatea el archivo recién creado como swap:

sudo mkswap /swapfile

6. Habilita el archivo de intercambio recién creado:

sudo swapon /swapfile

Para verificar si el nuevo archivo de intercambio está en uso, ejecuta:

swapon -s

Debería generar algo como esto:

Filename    Type   Size      Used   Priority
/swapfile   file   5242876   0      -2

7. Agrega el archivo de intercambio recién creado a /etc/fstab.

Para usar el nuevo archivo de intercambio cada vez que arranque, deberás agregarlo al archivo /etc/fstab. Abre /etc/fstab con un editor de texto (como root) como Nano:

sudo nano /etc/fstab

Y en este archivo agrega la siguiente línea:

/swapfile none swap sw 0 0

Para guardar el archivo (si has usado el editor de línea de comandos de Nano) presiona Ctrl + O, luego Enter. Para salir del editor de Nano después de haber guardado el archivo, presiona Ctrl + X. De nuevo, recuerda no modificar nada más en el archivo /etc/fstab. ¡Cambiar cualquier cosa en este archivo puede evitar que tu sistema arranque!

8. Este paso es necesario para las distribuciones de Linux basadas en Ubuntu y Debian (no estoy seguro si los demás también lo necesitan).

Necesitas editar el archivo /etc/initramfs-tools/conf.d/resume y comentar (agregar un # al comienzo de la línea) la línea RESUME = UUID = …. En mi caso, no hacer esto dio como resultado aproximadamente 15-20 segundos de tiempo de arranque adicional. El comando systemd-analyze no dio ninguna información sobre por qué está sucediendo, así que tuve que investigar un poco para descubrir que esto es lo que está causando el retraso de arranque.

Este archivo se usa para especificar el UUID de la partición de intercambio (que ya no existe porque ahora usamos un archivo de intercambio), y se usa al reanudar desde la hibernación.

Para comentar esta línea en /etc/initramfs-tools/conf.d/resume, todo lo que tienes que hacer es ejecutar el siguiente comando:

sudo sed -i 's/^RESUME=UUID/#RESUME=UUID/g' /etc/initramfs-tools/conf.d/resume

También necesitarás actualizar initramfs y luego de eso terminas:

update-initramfs -u

 

Fuente: Original | maslinux

¿Quién está en línea?

Hay 41042 invitados y ningún miembro en línea