¿Qué comando se puede usar para forzar la liberación de todo en la partición de intercambio a la memoria?


12

¿Qué comando se puede usar para forzar la liberación de todo en la partición de intercambio a la memoria?

Supongamos que tengo suficiente memoria.

Respuestas:


19

De esta pregunta Ask Ubuntu :

También puede borrar su intercambio ejecutando swapoff -ay luego swapon -acomo root en lugar de reiniciar para lograr el mismo efecto.

Así:

$ free -tm
...
Swap:         6439        196       6243
...
$ sudo swapoff -a
$ sudo swapon -a
$ free -tm
...
Swap:         6439          0       6439
...

Como se señaló en un comentario, si no tiene suficiente memoria, swapoffse producirán errores de " falta de memoria" y en los procesos de eliminación del núcleo para recuperar la RAM.


3
Explicando esto más a fondo, si no tiene suficiente RAM disponible, swapoffse producirán errores de memoria insuficiente y el núcleo comenzará a matar procesos para recuperar algunos. Use esto con precaución.
bahamat

Mejor espero que sí; Linux se comporta bastante hilarante cuando se ejecuta fuera de la memoria sin intercambio de activos en todo ...
Shadur

1

Como se señaló, simplemente desactivando todo el intercambio hará que el núcleo comience a matar cosas si no tiene suficiente memoria libre. Si desea evitar eso, cree primero un segundo conjunto de intercambio. Luego:

swapon /second/swap/device && swapoff /first/swap/device 
swapon /first/swap/device && swapoff /second/swap/device

Esto todavía se intercambiará en todo, pero si no hay suficiente espacio, se cambiará al segundo dispositivo de intercambio en lugar de matar cosas al azar. Entonces solo vuelve todo.


0

Un trazador de líneas:

sudo bash -c 'swapoff -a && swapon -a'
Al usar nuestro sitio, usted reconoce que ha leído y comprende nuestra Política de Cookies y Política de Privacidad.
Licensed under cc by-sa 3.0 with attribution required.