Que comando pode ser usado para forçar o lançamento de tudo na partição swap de volta à memória?


12

Que comando pode ser usado para forçar o lançamento de tudo na partição swap de volta à memória?

Suponha que eu tenha memória suficiente.

Respostas:


19

A partir desta pergunta do Ubuntu :

Você também pode limpar sua troca executando swapoff -ae, em seguida, swapon -acomo root, em vez de reiniciar, para obter o mesmo efeito.

Portanto:

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

Como observado em um comentário, se você não tiver memória suficiente, swapoffresultará em erros de "falta de memória" e nos processos de eliminação do kernel para recuperar a RAM.


3
Explicando isso ainda mais, se você não tiver RAM disponível suficiente swapoff, resultará em erros de falta de memória e o kernel começará a matar processos para recuperar alguns. Use isso com cuidado.
bahamat

Melhor espero que sim; linux se comporta muito divertida quando você ficar sem memória, sem troca de ativos em toda ...
Shadur

1

Como observado, simplesmente desativar todas as trocas fará com que o kernel comece a matar coisas se não tiver memória livre suficiente. Se você deseja evitar isso, crie um segundo conjunto de trocas primeiro. Então:

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

Isso ainda será trocado em tudo, mas se não houver espaço suficiente, ele será deslocado para o segundo dispositivo de troca em vez de matar coisas aleatoriamente. Então basta mudar tudo de volta.


Ao utilizar nosso site, você reconhece que leu e compreendeu nossa Política de Cookies e nossa Política de Privacidade.
Licensed under cc by-sa 3.0 with attribution required.