Como criar um arquivo de SWAP no Linux
zentilia / Shutterstock. com
Adicione espaço de troca a um computador Linux ou aumente o espaço de troca que já está presente, sem mexer nas partições. Mostramos a você a maneira mais fácil de personalizar seu espaço de troca.
Trocar arquivos x partições de troca
Existem vários cenários em que você pode querer aumentar o espaço existente ou adicionar um novo espaço de troca ao seu computador Linux.- Talvez seu espaço de troca esteja sendo executado no máximo ou próximo do máximo.
- É fácil clicar na opção errada durante o processo de instalação e recusar a adição de troca ao seu sistema inadvertidamente.
- Talvez você tenha decidido anteriormente que tinha tanta memória de acesso aleatório (RAM) que não precisava de nenhuma troca, e que mudou de idéia.
- Às vezes, você herda a administração de um sistema que não possui permuta, por motivos que nunca poderá descobrir.
Ao mesmo tempo, houve um impacto no desempenho ao usar um arquivo de troca comparado a uma partição de troca. Esse não é mais o caso de melhorias no desempenho de discos rígidos mecânicos (giratórios) e mais eficiência nas funções de troca no sistema operacional Linux. De fato, agora algumas distribuições Linux usam como padrão a criação de arquivos de troca em vez de partições de troca.
A troca não é usada apenas como um meio de liberar RAM quando você está com pouca memória. É uma parte importante de um sistema que funciona bem. Sem nenhuma troca, o gerenciamento de memória sã se torna muito difícil para o kernel alcançar. Vamos ver a maneira mais fácil de adicionar algum espaço de troca.
Antes de mergulharmos: Btrfs e SSDs
Há dois pontos que gostaríamos de discutir rapidamente.O sistema de arquivos Btrfs tem algumas ressalvas sobre os arquivos de troca. Houve um conflito entre a natureza de copiar e gravar do Btrfs, que queria operar de uma maneira e trocar os arquivos necessários para operar de outra. Algumas funções das quais os arquivos de troca dependem não foram implementadas e algumas suposições feitas sobre a numeração de blocos nos arquivos de troca não se mantiveram verdadeiras no Btrfs. Portanto, os arquivos de troca não eram suportados.
Desde o kernel 5.0, você pode ter arquivos de troca nos sistemas de arquivos Btrfs se eles estiverem configurados com os seguintes requisitos:
- Não há arquivos de cópia na gravação (NOCOW).
- Eles não são compactados.
- Eles não ficam em discos rígidos diferentes.
RELACIONADO: Qual sistema de arquivos Linux você deve usar?
Quando as unidades de estado sólido (SSDs) foram disponibilizadas pela primeira vez, havia uma preocupação em usá-las em situações que tinham gravações freqüentes no sistema de arquivos. As pessoas foram avisadas de colocar espaço de troca nos SSDs e até mesmo para evitar o log do sistema nos SSDs.
Hoje em dia, isso é muito menos preocupante, e muitos SSDs que estão à venda têm expectativa de vida que superará a maioria dos PCs. Um arquivo de troca em um SSD terá um desempenho muito melhor do que uma partição de troca em um disco rígido mecânico.
RELACIONADO: Quanto tempo as unidades de estado sólido realmente duram?
Verificando o espaço de troca existente
Olhe antes de saltar. Vamos verificar qual espaço de troca está disponível no seu computador. Você pode fazer isso de duas maneiras, e nós usaremos as duas. O comando free exibirá a memória usada e livre. A opção -h (legível por humanos) fará com que o uso gratuito de unidades sensíveis seja livre quando ele exibir os valores da memória.livre -h
A saída do free mostra que não há espaço de troca configurado nesta máquina.
A troca nunca é discutida sem a RAM e a RAM livre surgindo. Portanto, vale a pena notar que a RAM livre é fornecida como 237 MB. Não confunda isso com o total de RAM disponível para uso. Esse valor é fornecido pelo “ disponível ” 888 MB.
O Linux usa RAM livre para seus próprios propósitos, como cache de arquivos e buffers do kernel. A quantidade de RAM dedicada a isso é o buff / cache ” 871 MB. Mas essa memória ainda é considerada como "contada" e contada como "disponível". ” O conteúdo do “ buf / cache ” A RAM pode ser descartada imediatamente e usada por qualquer aplicativo que precise de memória.
swapon --show
Se não houver saída deste comando, não haverá troca configurada.
Se esses comandos revelaram que algum espaço de troca já está configurado, o tamanho do espaço de troca existente deve ser levado em consideração nas decisões relacionadas ao tamanho do arquivo de troca que você irá criar.
Quanto espaço de swap preciso?
A resposta tradicional foi "duas vezes a quantidade de RAM que você tem". ” Mas isso foi cunhado quando os computadores costumavam ter RAM muito limitada. À medida que a RAM ficou mais barata e os programas e jogos mais exigentes de memória, as especificações do PC foram ajustadas de acordo. Atualmente, os PCs domésticos com 32 GB de RAM não são incomuns. E você não alocará 64 GB de espaço no disco rígido para trocar espaço, se você tiver 32 GB de RAM. Isso é claramente excessivo.A quantidade de swap necessária é como um assunto incendiário, comparável ao “ que é o melhor editor. ” Uma das discussões mais sensatas que vimos sobre esse tópico está nas perguntas frequentes sobre a troca do Ubuntu. É uma abordagem curta e de bom senso (embora, como muitas pessoas, eles entendam mal como o swappiness funciona no Linux). Há uma tabela útil que mostra uma quantidade recomendada de espaço de troca para a quantidade de RAM que seu sistema possui e se você hiberna ou não o computador.
E a boa notícia é que isso realmente não importa qual o valor que você escolhe. Sempre podemos remover um arquivo de troca e substituí-lo por um maior ou, nesse caso, por um menor. Ou você pode simplesmente adicionar outro arquivo de troca.
Escolha um tamanho de arquivo de troca da tabela e execute-o por um tempo. Monitore o uso do espaço de troca pelo seu sistema. Se o ajuste fino for necessário, as alterações serão feitas com facilidade. Com arquivos de troca, é um trabalho de dois minutos. Compare isso ao ajustar partições em um computador Linux ativo.
RELACIONADO: O que é Swappiness no Linux? (e como alterá-lo)
Criando o arquivo de troca
Você não deve usar o comando fallocate para criar seu arquivo de troca. Isto é da página de manual do swapon:A implementação do arquivo de permuta no kernel espera poder gravar diretamente no arquivo, sem a assistência do sistema de arquivos. Esse é um problema em arquivos com falhas ou em arquivos de cópia na gravação em sistemas de arquivos como o Btrfs. Comandos como cp (1) ou truncate (1) criam arquivos com furos. Esses arquivos serão rejeitados pelo swapon. Arquivos pré-alocados criados por fallocate (1) podem ser interpretados como arquivos com falhas também, dependendo do sistema de arquivos. Os arquivos de troca pré-alocados são suportados no XFS desde o Linux 4.18. A solução mais portátil para criar um arquivo de troca é usar dd (1) e /dev/zero.Portanto, embora o fallocate seja mais rápido, usaremos o dd para criar o arquivo de troca. A máquina usada para pesquisar este artigo possui dois GB de RAM. Nós vamos criar um arquivo de troca de um GB.
As opções são:
- if: O arquivo de entrada. Neste exemplo, estamos usando / dev / zero, que fornecerá um fluxo de zero bytes.
- of: O arquivo de saída. Vamos criar um arquivo no diretório raiz, chamado swapfile.
- bs: o tamanho do bloco em bytes. Isso especifica quantos bytes devem ser lidos no arquivo de entrada e gravados no arquivo de saída por vez.
- count: Quantos blocos são lidos e gravados. Multiplique esse número pelo valor de bs para obter o tamanho do arquivo.
sudo dd se = / dev / zero de = / swapfile bs = 1024 count = 1048576
Algumas estatísticas são fornecidas quando o arquivo é criado.
Podemos ver o número de blocos (registros) gravados no arquivo, o tamanho do arquivo, o tempo necessário para criar o arquivo e a taxa efetiva de transferência de dados.
Use o comando ls para ver o arquivo no diretório raiz:
ls /
Preparando o arquivo de troca
Precisamos preparar o arquivo de troca com o comando mkswap antes que ele possa ser usado. Não precisamos fornecer parâmetros para o mkswap que não sejam o caminho e o nome do arquivo:sudo mkswap / swapfile
O arquivo está preparado para ser usado como um arquivo de troca. Observe o aviso sobre permissões de arquivo. Precisamos alterá-los para que o usuário root seja o único que possa ler e gravar no arquivo de troca.
Usando o arquivo de troca
As permissões padrão são muito liberais, precisamos restringi-las para que somente o root possa usar o arquivo de troca. Use chmod para alterar as permissões do arquivo:sudo chmod 600 / swapfile
Isso remove todas as permissões dos membros do grupo de arquivos e de outros, mas permite que o proprietário do arquivo, root, leia e grave no arquivo.
RELATED: Como usar o comando chmod no Linux
Precisamos usar o comando swapon para informar ao Linux que existe um novo arquivo de troca disponível para uso. Só precisamos fornecer o caminho e o nome do arquivo:
sudo swapon / swapfile
O arquivo de troca está ativo agora.
Adicionando o arquivo de permuta ao fstab
Para garantir que seu arquivo de permuta esteja disponível após uma reinicialização, adicione-o ao arquivo / etc / fstab. Você pode usar qualquer editor de texto que preferir, mas mostraremos o processo usando o editor de texto gráfico Gedit.sudo gedit / etc / fstab
A linha que precisamos adicionar ao final do arquivo é:
/ swapfile nenhum swap de troca 0 0
Os campos são:
- Sistema de arquivos: o caminho e o nome do arquivo de troca.
- Ponto de montagem: o arquivo não é montado como um sistema de arquivos; portanto, a entrada não é nenhuma. . ”
- Tipo: Este é o swap. ”
- Opções: no momento da inicialização, o swapon -a (iniciar todos os dispositivos marcados como swap) ser chamado de um dos scripts de inicialização. Essa opção instrui o Linux a tratar essa entrada como um recurso de troca que deve estar sob o controle desse comando swapon -a. É comum ver "padrões" ” usado aqui porque existe uma crença equivocada entre alguns usuários de Linux de que este campo é ignorado. Como veremos, esse não é o caso. Portanto, faz sentido usar a opção correta.
- Despejo: isso pode ser definido como zero. É irrelevante neste caso.
- Aprovado: pode ser definido como zero. É irrelevante neste caso.
RELACIONADO: Como gravar um arquivo fstab no Linux
Verificando o uso de swap
Para verificar se seu espaço de swap está sendo usado, use o comando swapon com a opção --show:swapon --show
As colunas são:
- Nome: o nome da partição ou arquivo de troca.
- Tipo: o tipo de dispositivo de troca.
- Tamanho: o tamanho do recurso de troca.
- Usado: a quantidade de espaço de troca usado.
- Prio: a prioridade desse espaço de troca.
A prioridade do espaço de troca
Cada espaço de troca recebe uma prioridade. Se você não fornecer um, um será automaticamente alocado. As prioridades alocadas automaticamente são sempre negativas. O intervalo de prioridades que podem ser alocadas manualmente é de 0 a 32767. Os recursos de swap com prioridades mais altas são usados primeiro.Se mais de um espaço de troca tiver a mesma prioridade, eles serão usados alternadamente até que ambos estejam cheios, o sistema procurará o espaço de troca com a próxima prioridade mais baixa. Se você tiver apenas um único espaço de troca, a prioridade é irrelevante, é claro. Mas mudaremos a prioridade do arquivo de troca que criamos para demonstrar como fazê-lo.
Para definir uma prioridade, adicione a opção pri = (priority) à entrada / etc / fstab. Edite a linha que você adicionou ao / etc / fstab para ficar assim:
/ swapfile nenhum swap sw, pri = 10 0 0Ou seja, adicione pri = 10 ao campo de opções, separado do “ sw ” com uma vírgula. Não deixe espaços entre os "sw", a vírgula e os "pri = 10". ” Reinicialize seu computador e use o comando swapon --show:
swapon - show
A prioridade desse espaço de troca foi elevada a 10. O que é uma prova positiva de que o campo de opções na entrada / etc / fstab não é ignorado.
Troque o espaço com facilidade
Recortando a exposição e a explicação, podemos criar um novo arquivo de troca de maneira fácil e rápida:sudo dd se = / dev / zero / of = / swapfile2 bs = 1024 count = 104857
sudo mkswap / swapfile2
sudo chmod 600 / swapfile2
sudo swapon / swapfile2E vamos verificar se funcionou :
swapon --show
Se você quiser fazer essa queda permanente, coloque-a no seu arquivo / etc / fstab. </ p>
Lança. Trabalho feito.
Via: How to Geek
Veja Também:
- Retorno da sanidade: como os novos logotipos do USB4 simplificarão as compras
- Como usar o rclone para fazer backup no Google Drive no Linux
- Como compartilhar músicas pela rede no macOS Catalina
- Melhor da CES 2020: todas as melhores coisas que vimos este ano
- Como usar a função QUERY no Planilhas Google
Nenhum comentário