Há algum tempo o Ubuntu abandonou o sistema de SWAP via partições para usar SWAP via arquivo, isso permite uma maior maleabilidade sem precisar ficar alterando o particionamento do seu sistema. Hoje você vai aprender a manipular este formato de SWAP.
Antes de começarmos o tutorial em si, é importante entender o que é SWAP. Para sintetizar, SWAP é um termo usado para referenciar o mecanismo de “troca” que existe entre o armazenamento do seu computador e a memória RAM. Usar SWAP pode ser útil em vário cenários e tudo depende de como você usa o computador.
Quando usar SWAP?
SWAP será especialmente útil se você é tipo de usuário que costuma lotar a sua memória RAM utilizando aplicações pesadas. Nominadamente eu poderia comentar sobre editores de vídeo, pessoas que usam muitas máquinas virtuais e assim por diante.
Outra boa razão para utilizar SWAP é se você tem um computador com pouca memória RAM, mas um SSD como meio armazenamento. Com a SWAP você evita que seu computador trave completamente.
A SWAP também pode ser útil se você é do tipo que gosta de hibernar o seu computador. Os dados que estavam na memória RAM podem ir para a SWAP temporariamente. Muita gente que reclama sobre “meu Linux não volta da hibernação”, provavelmente não está usando a SWAP corretamente.
O quanto usar de SWAP?
Em todos esses anos, nessa indústria vital, não encontramos um consenso sobre isso. Quando você tem pouca memória RAM, a SWAP pode ser uma amiga muito interessante, especialmente no caso de você ter um SSD, que por definição, tende a ser mais veloz que um HD tradicional.
Mesmo que você use um pouco mais o SSD do que usaria caso a SWAP não estivesse presente, o impacto na vida útil dele deverá ser pouco relevante, tanto que as distros (como o Ubuntu) agora estão colocando a SWAP em um arquivo, independente do dispositivo de armazenamento que você use
Vamos ficar tecer algumas hipóteses: em um computador com 4 GB de RAM (pouco para os padrões atuais) utilizado para navegar na internet, trabalhar com documentos e planilhas e editar imagens, pode ser bom colocar pelo menos a mesma quantidade em SWAP, ou seja, 4 GB.
Por outro lado, se você faz essas mesmas tarefas num computador com 16 GB de RAM e não utiliza a função de hibernar, pode manter os 4 GB, sabendo que raramente serão utilizados.
Ao hibernar, o Linux compacta os dados da RAM para armazenar no SWAP, mas é difícil prever exatamente o quão compactados ficarão os arquivos. Por via das dúvidas, caso queira ter essa função à disposição, mantenha a mesma quantidade de RAM em SWAP.
Então, tudo depende do caso.
Geralmente as distros tentam “chutar” um valor que deve atender a maioria das pessoas, o Ubuntu 24.04, por exemplo, adicionou um arquivo SWAP de 4 GB em uma instalação que possuía 16 GB de RAM físicos em nosso último teste.
Para você ter uma ideia, mesmo com “muita coisa” aberta agora no Ubuntu, a SWAP não chegou a ser utilizada. Mas isso também ocorre porque o swappiness foi configurado de modo a utilizar o SWAP apenas em último caso, garantindo um melhor desempenho no computador.

Trabalhando com SWAP Files
A opção do Ubuntu de utilizar o SWAP como arquivo foi uma boa ideia, ainda que ter uma memória SWAP em uma partição também possa ser útil em algumas aplicações. Um caso simples de exemplificar é a utilização de múltiplas distros Linux no mesmo computador que podem compartilhar a mesma SWAP, com SWAPFILES isso não é possível, você gasta mais armazenamento para ter o mesmo efeito.
Dentre os pontos positivos da abordagem do Ubuntu, talvez o principal, é a maior facilidade para manipular o arquivo de SWAP. Afinal, ele é um arquivo como qualquer outro, permitindo que você o apague, crie, e altere para o tamanho que você necessitar sem precisar alterar as partições, que é sempre uma operação mais delicada.
Você encontrará o arquivo “swapfile” dentro da raiz do seu sistema, no caso o Ubuntu (tem de se observar se o seu sistema usa SWAPFILES). Observando as propriedades dele, você observará que ele tem o tamanho da SWAP exibida, por exemplo, no seu “monitor do sistema”.

Vamos fazer um exercício aqui de apagar este arquivo e criar um novo com um tamanho diferente, assim você aprenderá todo o processo e poderá usá-lo conforme convir.
Vamos o terminalzinho, o seu amiguinho
O primeiro passo é desativar a SWAP, tenha certeza de que a sua memória SWAP não contém arquivos, ou seja, é melhor fazer o procedimento sem outras aplicações abertas. O procedimento a seguir também considera “swap” como o nome do arquivo de swap, que pode ser qualquer outro, então procure observar.
Primeiro vamos desligar o SWAP neste arquivo:
sudo swapoff /swap.img
Agora que ele não está mais em uso, seu sistema está sem SWAP e ele é apenas “mais um arquivo”, que você pode remover sem problemas assim:
sudo rm /swap.img
Agora podemos criar um novo arquivo com o tamanho que quisermos para usar como SWAP, a diferença é que você não pode simplesmente criar um arquivo qualquer, ele precisa se um arquivo com espaço pré-alocado, afinal, ele precisa ter o tamanho da SWAP que você quer.
Provavelmente, a forma mais fácil de criar um arquivo com essas propriedades é usando o utilitário “fallocate”, desse jeito:
sudo fallocate -l 5G /swap.img
sudo: Para rodar o comando com privilégios elevados.
fallocate: Nome do utilitário que vamos usar para fazer a modificação, para mais informações consulte “man 1 fallocate”.
l: A letra “L” minúscula é um parâmetro que ser para especificar o tamanho do arquivo que queremos criar.
5G: Este aqui é tamanho do arquivo que você deseja criar, pode ser qualquer outro valor que você queira, a letra G serve para indicar ao programa a quantidade de Gigabytes que você deseja no arquivo, você também pode indicar o tamanho usando Megabytes se preferir, colocando algo como “5120M”.
/swap.img: Essa parte final indica o diretório com o nome do arquivo que você vai usar como SWAP, você pode colocar esse arquivo em outro diretório se quiser, mas este é o padrão do Ubuntu, assim como o nome, que você poderia mudar para qual quiser.
Após criado o seu arquivo, você pode dar um “ls” na sua raiz para ver se o arquivo está lá mesmo. O próximo passo é opcional, mas é recomendado, pois se trata de uma medida de segurança.
Se você der um “ls -l” no arquivo “swapfiles” você verá que por padrão outros usuários tem permissão de “ler” o que estiver na SWAP, o que pode não ser uma boa ideia, por isso, convém fazer a alteração:
sudo chmod 600 /swap.img
O “/” só é necessário caso você não esteja na raiz no terminal.
Feito isso, agora precisamos transformar este arquivo em um SWAP com este comando:
sudo mkswap /swap.img
O último passo é ativar a SWAP neste arquivo:
sudo swapon /swap.img
E é basicamente isso, se você precisar alterar novamente, é só repetir o processo. Caso o comando fallocate não funcione é possível fazer de outro jeito também, mas você precisar criar o arquivo e encher ele de zeros para ficar do tamanho que você precisa sem outras informações, pode ser feito dessa forma:
sudo dd if=dev/zero of=/mnt/5GiB.swap bs=1024 count=1048576
Provavelmente você não precisará disso.
Dessa forma, você já tem a sua SWAP funcionando, mas, na verdade ainda podemos considerar um novo “último passo” que é configurar para que essa SWAP seja ativada durante o boot e você não precise fazer isso manualmente.
Para que isso ocorra precisamos inserir as informações de SWAP dentro de /etc/fstab. A questão é que se você usar o mesmo nome que o Ubuntu já usa por padrão “swap.img”, essa passo é desnecessário, pois a configuração já está lá corretamente, ainda assim, pode ser bom conferir se está tudo certo.
Use o editor de texto que preferir para abrir o arquivo, neste caso vamos usar o próprio gedit:
sudo gedit /etc/fstab
Observe a linha que contém o “swap.img”:

Caso tenha optado por outro nome, reproduza a informação da última linha do arquivo para que tudo funciona corretamente.
Agora que você já entendeu como funciona o “SWAPFiles” conte para a gente o que você achou, prefere SWAP em arquivo ou em partição? Por quê?
Caso queira aprender mais e se tornar um mestre do terminal, considere se tornar membro Diolinux Play para aproveitar nossos cursos sobre Bash e Shell Script!