Eu sei como criar e usar uma partição swap, mas também posso usar um arquivo?
Como posso criar um arquivo de permuta em um sistema Linux?
Eu sei como criar e usar uma partição swap, mas também posso usar um arquivo?
Como posso criar um arquivo de permuta em um sistema Linux?
Respostas:
Deixe claro que há um pouco de sobrecarga ao lidar com um arquivo em vez de uma partição.
Além disso, eu mesmo tenho em várias máquinas um arquivo de troca no mdadm
RAID, portanto, há mais uma sobrecarga. Mas se você ajustar vm.swappiness
sabiamente a um valor mais aceitável que 60, que é o padrão, não deverá ter problemas.
Por exemplo, eu tenho um servidor de 32 GB de RAM com um arquivo de swap de 32 GB no RAID6 com vm.swappiness
= 1. Citando a Wikipedia:
vm.swappiness
= 1: Kernel versão 3.5 e superior, assim como o Red Hat versão 2.6.32-303 e superior: quantidade mínima de trocas sem desativá-lo completamente.
Neste exemplo, criamos um arquivo de troca:
8 GB de tamanho
Localizado em /raid1/
Mude essas duas coisas de acordo com suas necessidades.
Abra o terminal e torne-se root
( su
); se você tiver sudo
ativado, você também pode fazer, por exemplo sudo -i
; veja man sudo
todas as opções):
sudo -i
Aloque espaço para o arquivo de troca:
dd if=/dev/zero of=/raid1/swapfile bs=1G count=8
Opcionalmente, se o seu sistema suportar, você poderá adicionar status=progress
a essa linha de comando.
Observe que o tamanho especificado aqui G
é em GiB (múltiplos de 1024).
Altere as permissões do arquivo de troca, para que somente ele root
possa acessá-lo:
chmod 600 /raid1/swapfile
Faça deste arquivo um arquivo de troca:
mkswap /raid1/swapfile
Ative o arquivo de troca:
swapon /raid1/swapfile
Verifique se o arquivo de troca está em uso:
cat /proc/swaps
Abra um editor de texto com o qual você tenha experiência neste arquivo, por exemplo, nano
se não tiver certeza:
nano /etc/fstab
Para disponibilizar esse arquivo de troca após a reinicialização, adicione a seguinte linha:
/raid1/swapfile none swap sw 0 0