Intercambio de partición vs archivo de intercambio

47

Estaba leyendo los nuevos cambios con Ubuntu 17.04 y me llamó la atención que se estaba moviendo del típico modelo de partición de intercambio a un nuevo modelo de archivo de intercambio para nuevas instalaciones.

¿Hay beneficios por usar esto en lugar de una partición de intercambio, tal vez relacionado con o en términos de rendimiento, ahorro de espacio, más en línea con el hardware actual como SSD y NVMe o algo más?

Otra pregunta relacionada es ¿cómo puedo migrar de una partición de intercambio a un archivo de intercambio? Supongo que usar dd pero quiero confirmarlo, ya que no sabía sobre el esquema del archivo de intercambio hasta ahora.

Y, por último, ¿será la hibernación un problema con los archivos de intercambio?

Por supuesto, estas preguntas podrían estar relacionadas con casos en los que el usuario tiene mucha RAM y el intercambio rara vez se usa (supongo). Tan solo para confirmar que esta información nos ayudará a mí y a otros con las mismas dudas.

Luis Alvarado
fuente
Acerca de la pregunta relacionada: askubuntu.com/questions/903414/… (si alguna vez recibe respuesta)
muru
digitalocean.com/community/tutorials/… - No puedo decir que haya hecho una diferencia, realmente no puedo. El sistema funciona bien como antes (el intercambio rara vez se usó de todos modos).
Aquí se explica cómo agregar un intercambio en el archivo . En 17.04 es un archivo /swapfile. La hibernación puede ser un problema.
Takkat
muru @CelticWarrior Takkat gracias por los enlaces y la información chicos. Muy útil de hecho. Si es posible Celtic, si pudiera, por favor agregue las respuestas específicas aquí en AskUbuntu por si acaso. Para todos, asegurarse de que las respuestas estén actualizadas (no en 2012, sino en 2016-2017, cuando comenzó todo el asunto del archivo de intercambio) ayudaría mucho y evitaría cualquier cosa que sucediera durante ese período de tiempo que haya cambiado.
Luis Alvarado
1
Si tiene la partición raíz encriptada, el archivo de intercambio también se encripta automáticamente. No es necesario hacer nada especial. Por lo tanto, es una mejora para el usuario general, que puede olvidarse de cifrar el intercambio.
Maris B.

Respuestas:

35

La única ventaja de un archivo de intercambio es que es fácil de cambiar el tamaño, por lo que no tiene mucho sentido realizar la transición a menos que no esté satisfecho con el tamaño de la partición de intercambio.

Tradicionalmente, los archivos de intercambio se desaconsejaban por varias razones. El archivo de intercambio solía ser más lento antes de Linux v2.4, y aún podría ser más lento si crea el archivo de intercambio en un sistema de archivos fragmentado. Puede ser un poco más probable que encuentre errores de memoria con archivos de intercambio, por ejemplo, los catch-22s donde no puede asignar más memoria hasta que intercambie algo, pero el sistema de archivos necesita asignar antes de poder intercambiar. Hace unos años, la hibernación de los archivos de intercambio era una nueva característica controvertida por razones similares. Hace años, cuando los sistemas de archivos todavía estaban un poco defectuosos (y no se registraban), no era prudente escribir una gran cantidad de sistemas de archivos importantes, cuando simplemente se podía usar un archivo de intercambio. Como la tradición predeterminada, las particiones de intercambio se han probado más que los archivos de intercambio. Presumiblemente, Canonical piensa que ya no vale la pena preocuparse por estos problemas.

La razón más importante para no cambiar a un archivo de intercambio es "por qué arreglar algo que no está roto". Si no realiza una copia de seguridad de su partición principal y elimina accidentalmente su en /homelugar de su archivo de intercambio, sería una molestia tratar de recuperarlo.

Otra razón para no cambiar a swapfiles es si está utilizando algo btrfsque todavía no admite swapfiles (excepto a través de archivos de bucle lento)


Incluso si decide buscar un archivo de intercambio, no hay necesidad real de eliminar su partición de intercambio a menos que tenga poco espacio. Puede usar ambos al mismo tiempo si lo desea. Si decide eliminar la partición de intercambio, primero inicie con un LiveCD de Ubuntu y vaya try without installing. Luego, en una ejecución de terminal gparted, elimine la partición de intercambio y cambie el tamaño de las particiones restantes (hacer una copia de seguridad primero puede ser una buena idea).

Ahora reinicie en su instalación habitual de Ubuntu y cree el archivo de intercambio. Dado que la ventaja de un archivo de intercambio es que es fácil de cambiar su tamaño, es posible que desee utilizar SwapSpace para administrar el tamaño de su archivo de intercambio:

sudo apt install swapspace

También puede crear manualmente un archivo de intercambio siguiendo las instrucciones en: https://www.digitalocean.com/community/tutorials/how-to-add-swap-space-on-ubuntu-16-04

Para abreviar una larga historia, puede hacer un archivo de intercambio 1G pegando lo siguiente en un terminal

sudo fallocate -l 1G /swapfile
sudo chmod 600 /swapfile
sudo mkswap /swapfile
sudo swapon /swapfile
sudo swapon --show

Si eso funciona, puede hacerlo permanente haciendo:

sudo cp /etc/fstab /etc/fstab.bak
echo '/swapfile none swap sw 0 0' | sudo tee -a /etc/fstab
gmatht
fuente
Hmmm citas necesarias ... no estoy seguro sobre el argumento de los sistemas de archivos con errores ¿qué tan atrás vas ...? En cuanto a la captura 22 oomkiller habría lo resolvieron en un grado - pequeña asignación debería haber causado pequeña morir, y yo le sorprendería que el intercambio a través de fs no tenía una memoria intermedia wee en la lista para tal eventualidad ....
taifwa
55
Hace más de 10 años, el consejo general era colocar swap, / usr / home y / var en particiones diferentes para que si uno de ellos se corrompiera pudiera recuperarse de los demás. Eso fue probablemente antes de que el diario fuera común. Los sistemas de archivos todavía tienen errores, pero la paranoia probablemente se gasta mejor en hacer copias de seguridad en lugares donde el ransomware no puede acceder.
gmatht
1
@taifwa He agregado un enlace a las preguntas frecuentes de btrfs donde no admiten el acceso rápido a archivos de intercambio (porque no están seguros de cómo implementarlo sin corrupción), y una nota de que la razón más importante para no cambiar es no solucionar lo que no existe. No está roto ¿Esto ayuda?
gmatht
1
@gmatht Bueno, cubriste todo allí de una manera muy agradable. Si encuentra alguna información nueva en los próximos meses / años que vienen con archivos de intercambio, infórmenos actualizando esta respuesta. Felicitaciones y excelente trabajo.
Luis Alvarado
3
@PabloBianchi Puede hacerlo, pero preferiría cambiar SSD en estos días. Poner intercambio en un disco giratorio también puede aumentar el desgaste. Los SSD modernos tienden a no desgastarse mucho más rápido que los discos giratorios.
gmatht