Criar arquivo para swap no linux

Posted . Visible to the public.

Normalmente usa-se uma partição livre como swap no Linux (que provavelmente já é criada na instalação do SO), porém em algumas situações não é possível criar uma partição extra. Um exemplo é em uma máquina EC2 da Amazon. Nesses casos, é possível criar um dispositivo de swap na forma de arquivo, assim como o Windows faz.
Para isso cria-se um arquivo vazio (cheio de zeros):
sudo dd if=/dev/zero of=/mnt/swapfile bs=1024 count=8388608
Aqui usei a partição /mnt da Amazon que é instance store padrão, e coloquei o tamanho de 8GB (8M * 1k).
Agora configura-se o arquivo para swap:
mkswap /mnt/swapfile
E monta-se o arquivo como swap, finalizando o processo:
swapon /mnt/swapfile
Para verificar que tudo deu certo, faça:
swapon -s
E o arquivo deve aparecer na lista com type = 'file'

Para fazer com que a partição seja montada automaticamente no boot, adicione a seguinte linha ao /etc/fstab:
/mnt/swapfile none swap sw 0 0
Lembrando que a partição /mnt na Amazon é zerada toda vez que a máquina for desligada, portanto essa configuração não irá funcionar se a partição estiver vazia, ou seja, se o arquivo /mnt/swapfile não existir.

Frederico Galvão
Last edit
Posted by Frederico Galvão to ZeroGlosa (2012-05-22 12:06)