O que é swap e como desabilitá-lo no Ubuntu / Linux

2

Eu li muitas vezes on-line que o swappiness deve ser diminuído ou desativado. É assim, o que isso faz? Tenho 2GB de Ram, devo desativar o swappiness?

    
por Sharad Gautam 09.06.2015 / 13:31

1 resposta

5

De acordo com a Wikipédia : -

Swappiness is a Linux kernel parameter that controls the relative weight given to swapping out runtime memory, as opposed to dropping pages from the system page cache. Swappiness can be set to values between 0 and 100 inclusive. A low value causes the kernel to avoid swapping, a higher value causes the kernel to try to use swap space. The default value is 60, and for most desktop systems, setting it to 100 may affect the overall performance, whereas setting it lower (even 0) may decrease response latency.

De acordo com o Ubuntu Wiki : -

Swap space is the area on a hard disk which is part of the Virtual Memory of your machine, which is a combination of accessible physical memory (RAM) and the swap space. Swap space temporarily holds memory pages that are inactive. Swap space is used when your system decides that it needs physical memory for active processes and there is insufficient unused physical memory available. If the system happens to need more memory resources or space, inactive pages in physical memory are then moved to the swap space therefore freeing up that physical memory for other uses. Note that the access time for swap is slower therefore do not consider it to be a complete replacement for the physical memory. Swap space can be a dedicated swap partition (recommended), a swap file, or a combination of swap partitions and swap files.

Como eu posso ver no meu gráfico, o Ubuntu está usando muito mais swap do que deveria. Você pode facilmente desligar / diminuir swapppiness como deve ser feito em sistemas com mais de 2GB de RAM que não são usados para trabalhos de uso de alta memória, como edição de alta definição Audi / Vídeo / Imagens,

Seu sistema está atrasado porque o Swappiness está configurado para o valor padrão e grava no disco rígido, que é 1000 vezes mais lento do que gravar na RAM .

Para verificar o valor atual de Swappiness,

cat /proc/sys/vm/swappiness

ou

sysctl vm.swappiness

Para desabilitar ou configurar o Swappiness temporariamente, no terminal, ( Ctrl + Alt + T ),

sudo swapoff -a

ou

sysctl -w vm.swappiness=10

Para fazer isso permanentemente, adicione linhas abaixo ao seu arquivo /etc/sysctl.conf usando sudo nano /etc/sysctl.conf : -

# CHANGE SWAP
vm.swappiness=x

Aqui, x pode ser qualquer número de 0 para 100 , onde: -

    0 = disable swap
    1 = minimum swap
   10 = recommended for >2GB
   60 = Linux Default for Swap
  100 = Maximum Swap, for >1GB Ram

Você não deve configurar o valor de swappiness para 0 a menos que tenha certeza de que nunca usará sua memória RAM, caso contrário Memória insuficiente (OOM) Killer irá chutar e começar a matar processos usando a RAM.

Aqui está mais algumas informações.

    
por 09.06.2015 / 14:38

Tags