Memória Swap é uma memória virtual, utilizada pelo Linux quando não existe mais memória RAM disponível no sistema. Normalmente, essa memória é uma partição que foi formatada para esse fim no momento da instalação do sistema operacional.
Recomenda-se que essa memória possua 2x o tamanho da memória RAM do sistema.
Supondo que, por algum motivo na instalação, não tenha sido definido corretamente uma partição swap e você comece a enfrentar problemas em função disso, ou ainda, você aumentou a memória RAM do computador e agora quer aumentar a área de swap . Neste artigo, veremos como adicionar mais uma área de swap em nosso sistema operacional.
Para atingir nosso objetivo, temos duas alternativas:
1. Criar a área de swap a partir de uma partição (Swap partition);
2. Criar a área de swap a partir de um arquivo do nosso sistema de arquivos (Swap file).
1. Adicionando uma Swap Partition
Supondo que seu sistema possua a partição disponível /dev/sdb1, precisaremos formatá-la para que ele seja utilizada com Swap (da mesma forma que formatamos uma partição para utilizar ext3 ou ntfs). Em seguida precisamos ativá-la e finalmente devemos informar ao sistema que em cada boot ele deve ativar essa partição como área de swap disponível. Para tanto, devemos seguir os seguintes passos:
1.1 – Formatando a nova partição
/sbin/mkswap /dev/sdb1
1.2 – Ativando a nova partição
/sbin/swapon /dev/sdb1
1.3 – Definindo para que ela seja ativa em boot
Deve ser inclusa a linha abaixo no arquivo /etc/fstab
/dev/sdb1 swap swap defaults 0 0
2. Adicionando um Swap File
Supondo agora que você não possua ferramentas para fazer o particionamento, ou que essa opção não seja possível. A saída é usar um arquivo como área de Swap. Para tanto, precisaremos criar o arquivo, formatar o arquivo para que ele seja utilizado com swap, ativá-lo para que seja utilizado pelo sistema e em seguida colocá-lo para ser carregado no boot. Para tanto, devemos seguir os seguintes passos:
2.1 – Preparação do Arquivo
Supondo que o tamanho do arquivo seja múltiplo de 1024, e você queira adicionar uma swap de 1 Gb.
Usaremos o comando dd para realizar a criação desse arquivo.
dd if=/dev/zero of=/swapfile bs=1024 count=1024000
Onde:
of = arquivo a ser criado
bs = tamanho do bloco
count = tamanho do arquivo
A saída desse comando será algo parecido com:
10240000 records in
10240000 records out
1048576000 bytes (1,0 GB) copied, 114,686 seconds, 9,1 MB/s
2.2 – Formatando o arquivo para ser usado como Swap
/sbin/mkswap /swapfile
A saída desse comando será:
Setting up swapspace version 1, size = 1048571 kB
2.3 – Ativando o arquivo como área de Swap
/sbin/swapon /swapfile
2.4 – Definindo para que ele seja ativo em boot
Deve ser incluída a linha abaixo no arquivo /etc/fstab
/swapfile swap swap defaults 0 0
3.0 – Verificando se a área de swap está ativa
Se você chegou nesse ponto, sua nova Swap já deve estar ativa em seu sistema, seja via partição ou via arquivo.
Para validar, use o comando free, pois ele exibirá a quantidade de memória Swap do sistema (mostrará o valor somado de todas as swaps).
No meu caso, a saída desse comando foi:
[root@localhost /] free
total used free shared buffers cached
Mem: 1543916 846804 697112 0 106860 131024
-/ buffers/cache: 608920 934996
Swap: 1548272 33300 1514972
Possuo ativo 1.5 Gb de memória swap.
Caso você queira informações mais detalhadas, consulte o arquivo /proc/swaps que terá um conteúdo parecido com:
[root@localhost /] cat /proc/swaps
Filename Type Size Used Priority
/dev/mapper/VolGroup00-LogVol01 partition 524280 60008 -1
/swapfile file 1023992 0 -2
Vemos que minha partição original de swap era de 524 Mb e o meu novo arquivo de swap possui 1.0 Gb.
Frederico Madeira