Aprenda como utilizar sua memória RAM como armazenamento comum, permitindo manipular arquivos com a velocidade de um SSD!
| Se você apoia nosso site, desative o AdBlock quando visitá-lo, inclusive em Mobile!
Os anúncios são poucos e não invasivos. Se quiser contribuir com nosso trabalho, clique em qualquer banner de sua preferência, exceto dos Parceiros. Mais detalhes clicando aqui.
Hoje apresentarei a vocês como utilizar parte do espaço livre da sua memória RAM como um armazenamento comum. A ideia foi inspirada fuçando no tutorial de como passar a pasta /tmp para a RAM, aliviando a escrita em SSD’s e aumentando sua vida útil.
- Pra quê serve esse absurdo?
Um exemplo interessante é criar uma Lixeira mais poderosa.
Ao contrário da lixeira normal, que esvaziada ainda pode permitir que um arquivo seja recuperado (a menos que você utilize métodos pouco ortodoxos para apaga-la usando sobrescrita lenta com zeros, como com o comando Shred), a pasta criada na RAM, a qual chamarei de “Blackhole” utiliza somente a memória RAM: Como consequência, tudo ali dentro vai automaticamente desaparecer quando o PC for reiniciado.
Tambem é ideal para quem precisa realizar operações que utilizam muito acesso ao disco, tais como: extração de texto e/ou organização de arquivos. Assim, é bem mais prático você copiar esses arquivos para a RAM, realizar as operações, e por fim, copiar o resultado de volta para o disco. Isso diminui significativamente o tempo total dessas operações.
Esse último método é particularmente interessante caso você use um HDD e queira mais velocidade na manipulação de arquivos. Você pode usar ela para descompactar um arquivo e depois gravá-lo no HDD, agilizando o processo como se estivesse num SSD.
Observações
Esteja atento á quedas de energia. A memória RAM é volátil e caso o PC desligue durante tais operações você perderá tudo que estiver nela.
Além disso, fique atento á quantidade total de RAM livre que você possui. Se a memória RAM lotar, o sistema vai iniciar o despejo de SWAP para não travar. Caso seu sistema não tenha memória SWAP, ele vai dar Kernel Panic. (congelamento total do sistema, exigindo reinício forçado)
Estou enojado, mas estou curioso. Como faço isso?
A dica é bem simples:
Crie uma pasta na sua /home/$USER com o nome de Blackhole
Ou o nome que achar mais conveniente. Pode ser Nárnia… Colapso, Sol, Escuridão, Drax, etc…
Adicione estas linhas a /etc/fstab, lembrando de editar o nome em negrito para o nome escolhido de sua pasta:
# Criando Armazenamento na RAM: tmpfs /home/$USER/Blackhole tmpfs defaults,noexec,nosuid 0 0
Salve e feche.
Reinicie seu computador.
Ao ligar, você vai perceber que você agora tem uma mídia montada chamada, em nosso exemplo, de Blackhole. Ao abri-la você verá a informação de que ela tem poucos Gb’s livres comparado ao resto do sistema. É o armazenamento da sua memória RAM acessível! Lembrando que a capacidade disponível na pasta será contabilizada depois de abater do total, o valor consumido pelo cachê e pelo buffer. Esses valores você encontra com o comando:
$ free -h
Explicação
Essa pasta permite gravar temporariamente arquivos diretamente na memória RAM com acesso normal de usuário. Relaxe que o conteúdo dela não vai afetar o uso normal de memórias pelo sistema. Não tem risco de haver uma corrupção por mistura de arquivos ou qualquer coisa parecida.
O trecho “noexec” la no /etc/fstab diz ao sistema que nada ali dentro será executado, já adicionando uma proteção extra e evitando que algum malware ou programa malicioso de qualquer espécie rode direto da memória RAM. Ela será apenas para armazenamento.
Se você tiver conhecimento avançado, poderá adicionar flags extras especiais á essa pasta editando a linha dela no fstab, deixando-a com as funções que você quiser.
Você pode adicionar quantas “Blackholes” quiser, basta criar uma linha no fstab e um endereço de diretório para cada uma, separadas.
- Então posso jogar pastas de sistema na RAM?
Sim! Aliás, esse é o mesmo método que permite mudar a /tmp para a RAM, deixando o sistema particularmente mais rápido. Em vez do sistema gravar cada arquivo temporário no disco rígido, mude a pasta /tmp para a RAM, assim ele gastará mais RAM porém ficará mais rápido.
No /etc/fstab, a linha ficaria:
tmpfs /tmp tmpfs defaults,noexec,nosuid 0 0
Salve e reinicie. Quando voltar, note que para várias tarefas seu sistema ficou mais rápido.
Voltando ao foco da postagem, veja bem o que for salvar nessa pasta montada na RAM; o acesso e a escrita serão BEM RÁPIDOS, por estarmos lidando diretamente com a memória RAM, porém, lembrando novamente, ela é muito volátil, qualquer desligamento abrupto do sistema e os arquivos que estiverem lá vão desaparecer para sempre.
- Cansei. Quero remover isso!
Primeiro, você deve remover a linha inserida em /etc/fstab. Se quiser deixar temporariamente indisponível, basta adicionar uma # no começo da linha, assim:
# tmpfs /home/$USER/Blackhole tmpfs defaults,noexec,nosuid 0 0
O mesmo vale pra linha da /tmp na RAM.
Reinicie a máquina.
Uma vez reiniciado, você poderá excluir a pasta Blackhole de /home/$USER/.
Enquanto isso, a /tmp, se removida do /etc/fstab, será montada normalmente no HDD.
Entenda que, com as pastas montadas na RAM você terá problemas se tentar excluí-las diretamente, sem tira-las do /etc/fstab primeiro e reiniciando o PC posteriormente.
#UrbanCompassPony
Autodidata, me aprofundei em sistemas operacionais baseados em UNIX®, principalmente Linux. Também procuro trazer assuntos correlacionados direta ou indiretamente, como automação, robótica e embarcados.