Como adicionar um arquivo de swap no Ubuntu
Você já sabe a importância de utilizar swap no Ubuntu, veja aqui os comandos e o passo a passo para configurar.

Pré-requisitos: Conhecimentos básicos de Linux, sistemas operacionais. Além disso, é necessário entender o é swap.
TL;DR ↪ Se você precisar apenas dos comandos, clique aqui para rolar a página direto para o resumo TL;DR!
📖 Índice
Me lembro de quando eu ainda estava começando com Linux lá o que já tem bem uns 20 anos. Eu estava estudando para a LPI101 (que até mudou de nome) e eu sempre lia que era muito importante deixar um swap configurado logo depois de uma nova instalação de Linux.
Embora seja algo simples e que eu já fiz várias vezes, não é uma coisa que faço todo dia. Em casos como esse, mesmo eu entendendo todo o conceito, eu nem sempre gravo de cabeça todos os comandos.
De forma simplificada, o swap é uma area de disco para ser utilizada pelo Kernel em casos que a memória RAM física está cheia.
Antigamente era muito comum, durante a instalação do Linux, criar uma partição exclusiva para o swap. Entretanto, nas versões mais modernas do Kernel, temos um resultado bem proximo utilizando um arquivo de swap ao invés de um partição ou de um outro disco.
Além disso, atualmente é muito comum contratarmos instancias na nuvem, imagens prontas e sistemas virtualizados, o que torna o gerenciamento de discos e partições uma coisa mais difícil e em alguns casos até indisponível.
Como definir o tamanho do swap?
Uma boa prática que eu aprendi e que atende a maioria dos casos é sempre criar o swap com o dobro do tamanho da quantidade de memória RAM. Ou seja, se você tem 1GB de memória RAM, é uma boa prática criar um swap de 2GB.
Entretanto, essa métrica faz mais sentido para maquinas com pouca memória. É contra-prudente você considerar um swap de 256GB para uma máquina com 128GB de RAM.
Sendo assim, utilize a seguinte métrica que vai atender a maioria de casos de uso gerais. Eu montei essa tabela com dados de um artigo no opensource.com.
Memória RAM | Tamanho SWAP |
---|---|
até 2GB | 2x RAM |
2GB até 8GB | 1x RAM |
8GB até 64GB | 0.5x RAM |
mais que 64GB | depende |
Nos exemplos que vou utilizo abaixo, eu estou considerando um Ubuntu 20.04 em uma instancia na DigitalOcean com 1GB de RAM. Sendo assim, estou criando um swap de 2GB.
Verificar se já existe swap configurado
A maneira mais fácil de você verificar se já existe algum swap configurado no seu ambiente é utilizar o comando free -m
. Se tiver swap configurado ele sairá discriminado conforme abaixo:
free -m
#Output
total used free shared buff/cache available
Mem: 971 663 64 0 243 152
Swap: 2047 1076 971
Outra maneira de verificar se já existe swap configurado é executando o comando swapon --show
ou swapon -s
. Se tiver swap configurado ele será listado conforme abaixo:
swapon --show
#Output
NAME TYPE SIZE USED PRIO
/swapfile file 2G 1G -2
swapon -s
#Output
Filename Type Size Used Priority
/swapfile file 2097148 1101172 -2
Como ativar o swap no Ubuntu
Antes de começar tenha em mente que executaremos o seguintes fluxo:
↳ Criar arquivo para swap → Ajustar permissões → Ativar swap → Configurar montagem
Segue o passo a passo completo com todos os comandos abaixo.
Criar arquivo para swap
Antes de iniciar, você precisa de um arquivo para onde o swap será direcionado. Você precisa criar um arquivo vazio de um tamanho já pre-definido para ser utilizado como swap. A forma mais simples é usando o comando dd
.
dd if=/dev/zero of=/swapfile bs=1M count=2048
No comando acima, estamos criando um arquivo /swapfile
com 2GB de tamanho. Basicamente estamos gravando 2048 vezes (count=2048
) um bloco com o tamanho de 1MB (bs=1M
) de caracteres nulos (if=/dev/zero
), o que resulta em um arquivo de 2048MB ou 2GB de tamanho.
Ajustar permissões no arquivo de swap
Após ter o arquivo criado, você precisa ajustar as permissões. Embora esse arquivo terá apenas fragmentos de informações relevantes apenas para o kernel, o ideal é que, por segurança, apenas o usuário root tenha acesso a esse arquivo.
sudo chmod 600 /swapfile
Como ativar o swap no Ubuntu
Antes de efetivamente ativar o swap, você precisa transformar o arquivo que você criou (/swapfile
) em um formato reconhecido pelo Linux como swap. Para isso, utilize o comando abaixo:
sudo mkswap /swapfile
Em seguida, ative o swap no Linux para o arquivo criado. Para isso, utilize o comando abaixo:
sudo swapon /swapfile
Prontinho, o seu Ubuntu já está com o swap. Você pode verificar se deu certo utilizando os comandos free -m
ou o swapon -s
que falei lá no começo do artigo.
Configurar montagem automática do swap
O passo anterior, de ativar o swap vale apenas para a execução atual do Linux. Caso você reinicie o sistema, você precisa ativar o swap novamente. É mais conveniente deixar o swap já montando automaticamente. É muito simples e basta adicionar o ponto de montagem no seu fstab
conforme o procedimento abaixo:
sudo vim /etc/fstab
Em seguida, adicione na última linha do arquivo /etc/fstab
a seguinte informação:
/swapfile none swap sw 0 0
Prontinho, agora é só reiniciar para validar se deu tudo certo!
Como desativar o swap no Ubuntu
Caso você precise por algum motivo desativar o swap, seja para adicionar swap maior, ou trocar local para um outro disco, você pode fazer utilizando o comando abaixo:
sudo swapoff /swapfile
Em seguida, você pode validar se deu tudo certo utilizando algum dos comandos que falei acima, por exemplo o free -m
ou o swapon -s
.
TL;DR | Resumo
# Criar um arquivo de swap de 2GB
dd if=/dev/zero of=/swapfile bs=1M count=2048
# Ajustar permissões do arquivo
sudo chmod 600 /swapfile
# Transformar o arquivo no tipo swap
sudo mkswap /swapfile
# Ativar o swap no sistema
sudo swapon /swapfile
# Verificar se deu tudo certo
free -m
swapon -s
#Desativar o swap no sistema
sudo swapoff /swapfile
Espero que essa dica tenha sido útil, valeu!