Como mudar o tamanho da troca no Ubuntu

Como mudar o tamanho da troca no Ubuntu

Neste guia, demonstraremos como alterar o tamanho da troca no Ubuntu 22.04.

Pré -requisitos:

Para executar as etapas deste guia, você precisa dos seguintes componentes:

  • Um sistema Ubuntu adequadamente configurado. Para testes, você pode instalar o Ubuntu em uma máquina virtual usando o VirtualBox.
  • Acesso a um usuário que não seja de raiz que pode executar os comandos sudo.

Arquivo de troca no Linux

O carneiro da máquina é dividido em pedaços pelo kernel Linux chamado "Páginas". Sempre que uma página é copiada para um espaço pré -configurado nos dispositivos de armazenamento secundário (disco rígido ou SSD na maioria dos casos), ela é chamada de "troca". O espaço dedicado pré -configurado é chamado de "espaço de troca".

A quantidade total de memória física (RAM) e espaço de troca é chamada de memória "virtual".

Está trocando necessário?

Há algumas razões pelas quais a troca é necessária:

  • Quando há uma demanda por mais memória do que o que está fisicamente disponível, a troca de páginas menos importantes libera mais memória para o processo que requer mais memória.
  • Uma grande parte das páginas usadas durante a inicialização de um programa pode ver muito pouco uso. A troca dessas páginas pode liberar mais memória para outros aplicativos.
  • Se nenhum espaço de troca for atribuído, se o espaço da RAM estiver totalmente ocupado, ele poderá fazer com que o sistema trave, especialmente os sistemas com baixo espaço na RAM.

No entanto, a troca vem com seu próprio conjunto de desvantagens:

  • Comparado à RAM, armazenamentos secundários (discos rígidos, SSDs e outros são extremamente lentos. Para colocar em perspectiva, as velocidades de acesso à RAM são medidas em nanossegundos, enquanto as velocidades de acesso ao disco são medidas em milissegundos.
  • Devido à diferença nas velocidades de leitura/gravação, a troca é um processo muito lento. Quando muita troca está acontecendo, acaba diminuindo o sistema.

Tipos de espaços de troca

Você encontrará dois tipos de espaços de troca no Linux:

  • Uma partição de troca dedicada - nenhum outro arquivo pode ser armazenado lá.
  • Arquivos de troca - esses arquivos podem estar em qualquer lugar do sistema de arquivos.

Dependendo do espaço RAM disponível, o tamanho do espaço de troca pode variar. Aqui estão alguns exemplos:

Trocar arquivo no Ubuntu

O Ubuntu geralmente usa uma partição de troca dedicada para trocar. Muitas vezes, esta partição é criada durante a instalação. No entanto, podemos criar e ajustar os arquivos de troca à vontade.

Listando os espaços de troca

O comando a seguir mostra todos os espaços de troca que estão configurados atualmente:

$ SWAPON

A lista contém todos os espaços de troca, partições e arquivos de troca.

Criando arquivos de swap

Uma vantagem importante dos arquivos de troca sobre a partição de troca é que o tamanho do arquivo pode ser facilmente alterado, alterando assim a quantidade de espaço de troca sem tocar nas partições de disco. Nesta seção, criamos um novo arquivo de troca e o adicionamos ao pool de troca atual.

Primeiro, crie um arquivo em branco usando o seguinte comando:

$ sudo dd if =/dev/zero de =/new_swap bs = 1m contagem = 2048

Aqui:

  • O tamanho do arquivo é calculado como 1m x 2048 = 2g.
  • Para criar um arquivo com um tamanho diferente, altere o valor do argumento de contagem de acordo.
  • O /dev /zero é um dispositivo de bloco especial no sistema Linux que gera zero bytes toda vez que é lido.
  • Embora possamos usar outras ferramentas como o Falocate para criar o arquivo, em algumas situações, isso pode levar a problemas. É discutido mais profunda nesta postagem de Askubuntu.

Em seguida, precisamos definir as permissões de arquivo corretas usando o seguinte comando:

$ sudo chmod 600 /new_swap

Agora, precisamos formatar o arquivo como troca usando o seguinte comando:

$ sudo mkswap /new_swap

Finalmente, podemos adicionar o arquivo ao pool de troca.

$ sudo swapon /new_swap

Se a ação for bem -sucedida, o novo arquivo de troca deve aparecer na lista de espaços de troca.

$ SWAPON

Observe que esta ação é apenas temporária. Ao reiniciar, o arquivo de troca não será mais usado. Para fazer uma mudança permanente, temos que atualizar a tabela /etc /fstab com a seguinte entrada:

$ /new_swap Swap Swap Padrões 0 0

Verificando o espaço de troca gratuito

O comando a seguir imprime a memória e o uso de swap:

$ sudo grátis -h

Excluindo o arquivo de troca

Para excluir um arquivo de troca, primeiro temos que garantir que ele não esteja em uso. O comando a seguir desativa um arquivo de troca:

$ sudo swapoff -v /

Verifique a lista de espaços de troca ativa para confirmar a mudança.

$ SWAPON

Se o arquivo de troca for declarado em /etc/fstab, Você também precisa remover a entrada. Agora, o arquivo de troca é seguro para ser excluído. Exclua -o usando o seguinte comando:

$ sudo rm /

Alterando o tamanho da troca

Dependendo do tipo de espaço de troca (partição ou arquivo), o processo de alteração do tamanho da troca pode variar.

Alterando o tamanho da partição de troca

Uma partição só pode ser estendida se houver espaços não alocados imediatamente após ela. Caso contrário, a única outra opção de redimensionamento é diminuir a partição. Também se aplica à partição de troca.

Se você estiver usando o Gnome Desktop, o aplicativo "discos" pode oferecer uma visão da situação.

Alternativamente, podemos usar GPARTED para visualizá -lo.

Como você pode ver, a partição de troca está diretamente ao lado da partição raiz neste sistema. Isso não deixa espaço para estender a partição de troca.

No entanto, as operações de encolhimento e reformatação podem ser realizadas. Saiba mais sobre o gerenciamento de partições usando o fdisk ou o GPARTED. O comando redimension2fs também é necessário para redimensionar o sistema de arquivos existente de acordo com a partição redimensionada.

Alterando o tamanho do arquivo de troca

Para manipular um arquivo de troca, primeiro precisamos removê -lo do pool de troca. Execute o seguinte comando:

$ sudo swapoff /new_swap

Agora, execute o comando DD para aumentar o tamanho do arquivo:

$ sudo dd if =/dev/zero de =/new_swap bs = 1g count = 2 ofLag = anexar convc = Notrunc

Aqui, adicionamos 2 GB mais espaço ao arquivo de troca. Em seguida, reformatamos o arquivo como troca usando o seguinte comando:

$ sudo mkswap /new_swap

Finalmente, podemos permitir que a troca:

$ sudo swapon /new_swap
$ SWAPON

Observe que em determinadas situações, tentando desativar o arquivo de troca, pode resultar em um erro como "Swapoff falhou: não pode alocar memória". Nesse caso, fazemos o seguinte:

  • Crie um novo arquivo de troca com espaço maior.
  • Anexe a troca maior ao sistema.
  • Exclua o arquivo de troca mais antigo e menor.
  • Remova a entrada de arquivo de troca mais antiga de /etc/fstab (se aplicável).

Conclusão

Discutimos uma profundidade demonstrada sobre o gerenciamento dos espaços de troca no Ubuntu. Discutimos os vários tipos de espaços de troca. Aprendemos a redimensionar as partições de troca e como trabalhar com arquivos de troca (criando, excluindo e redimensionando).

Interessado em dominar o Ubuntu? Confira a subcategoria do Ubuntu, que contém inúmeros guias para ajustar o sistema Ubuntu e usar várias ferramentas.

Computação feliz!