Melhorar o desempenho e otimizar a vida útil do SSD no Linux

Dicas de otimizações para utilizar SSD no GNU/Linux
OBJETIVO
Existe alguns ajustes que poderão aumentar o desempenho do sistema GNU/Linux quando instalado em um disco SSD;Montar partições na memória RAM diminuem as operações de I/O ao SSD, aumentando assim a vida útil do disco;
É desejável que o computador possua pelo menos 8GB de memória RAM, já que usaremos uma boa parte desse espaço para partições que antes estariam no disco;
Mas o ideal é ter 16GB de memória RAM (ainda mais se for utilizar o Chrome).
DICAS
* confirme se o modo AHCI no BIOS está ativado;* procure, no site do fabricante, por atualizações do firmware do seu SSD, mantenha-o atualizado.
Desempenho do SSD no Linux
Outro comportamento importante é que, o sistema sempre altera a informação de última data de alteração e última data de acesso aos arquivos, o que gasta mais ainda operações de I/O do SSD;
As distribuições atuais do Linux suporta que seus sistemas de arquivos sejam montados de forma apropriada em discos SSD;
Temos os tipos de montagem: noatime, nodiratime, sendo que em alguns casos deve ser utilizado o relatime, além da opção ssd;
Estes e outros recursos deverão ser desativados.

Esquema de particionamento
Durante o processo de instalação, as distribuições Linux permitem utilizar o layout de partições padrão (automático) que é sugerido pelo instalador;
Neste esquema, o instalador irá destinar uma pequena quantidade de espaço do disco (em torno de 4GB) para ser utilizado como Swap (partição de memória virtual);
O instalador geralmente calcula o tamanho desta partição com base na quantidade de memória RAM disponível;
Uma vez que temos 8GB ou mais de RAM, podemos economizar este espaço que seria utilizado como Swap;
Além do mais, a utilização de Swap tende a degradar o sistema, uma vez que é importante manter os dados na memória RAM e não utilizar o disco como memória virtual.
Particionamento manual
No Ubuntu, podemos seguir o particionamento automático durante a instalação, porém é recomendado que seja feito um particionamento manual, para dessa forma não criar a partição de swap.
Caso o sistema já esteja instalado, e você não queira reinstalar, poderá deixar de lado a partição de Swap e perder alguns Gigas que ficarão inutilizáveis (em torno de 4GB);
OBS: não será abordado sobre os procedimentos de particionamento aqui, procure algum vídeo no Youtube. Faça os primeiros testes em máquina virtual para depois aplicar as dicas daqui no sistema rodando no SSD.
Partições em memória
Os registros dos eventos do sistema são armazenados em arquivos de texto, no diretório /var/log, portanto, tais arquivos são escritos com frequência;
É recomendado mover tal diretório para um sistema de arquivos temporário virtual na memória RAM;
Comece editando o arquivo /etc/fstab:
bash$ sudo vi /etc/fstab
Comece localize a linha referente a SWAP, conforme ilustrado, e comente-a (acrescente o sinal de # no começo da linha):
bash$ sudo vi /etc/fstab
Comece localize a linha referente a SWAP, conforme ilustrado, e comente-a (acrescente o sinal de # no começo da linha):
# swap was on /dev/sda5 during installation# UUID=879b59e7-cca2-458d-a53c-f3a25a4d9777 none swap sw ...
Timestamp de acesso aos arquivos
Desativar o registro de data de última alteração;No arquivo /etc/fstab, localize a linha responsável pela partição raiz (geralmente a primeira), e antes da opção errors, acrescente a palavra noatime, conforme aqui:
# / was on /dev/sda1 during installationPodemos ainda substituir o noatime por relatime, mais adequado para a partição raiz do sistema.
UUID=4fc2fd6e-946g-49c1-b0b5-ece7ed0435b4 / ext4 defaults,ssd,relatime,subvol=@ 0 1
Outras partições, por exemplo /home, foi deixado como noatime.
Partição em memória RAM
Mova o diretório de logs e o diretório temporário para um disco virtual em memória: /tmp e /var/log.
Ainda no /etc/fstab acrescente estas linhas:
tmpfs /tmp tmpfs nodev,nosuid,noexec,nodiratime,noatime,size=512M,mode=1777 0 0
tmpfs /var/log tmpfs nodev,nosuid,noexec,nodiratime,noatime,size=512M,mode=755 0 0
Observar que 512M refere-se ao tamanho máximo que as partições poderão ocupar na memória RAM do computador.
Salvar e sair.
Desativar a SWAP no sistema
Informar ao kernel para não utilizar Swap: edite o arquivo /etc/sysctl.conf:
bash$ sudo vi /etc/sysctl.conf
Acrescentar esta linha:
vm.swappiness=0
Salvar e sair.
Alterar o scheduler
Editar o arquivo de configuração do GRUB para realizar esta alteração:
bash$ sudo vi /etc/default/grub
Localize a linha:
GRUB_CMDLINE_LINUX_DEFAULT="quiet splash"
Altere-a conforme ilustrado abaixo, acrescentando isto: elevator=deadline, resultado:
GRUB_CMDLINE_LINUX_DEFAULT="elevator=deadline quiet splash"Salvar e sair. Agora aplicar a alteração no GRUB:
bash$ sudo update-grub
Reiniciar o sistema
E torcer para que não tenha ficado nada errado :D
Outras dicas podem ser aplicadas, ou melhor devem ser aplicadas:
- fique atento ao TRIM do SSD: no Ubuntu tem uma tarefa agendada no CRON para disparar a execução do trim, semanalmente.
- desabilitar o cache do Firefox, nas preferências, desative o gerenciamento automático do cache, e limite a 0MB de consumo de disco;
- desabilitar a escrita em alguns arquivos responsáveis pela recuperação das abas abertas quando o Firefox trava;
Em uma aba em branco digite:
about:config
Localize a opção browser.sessionstore.interval que estará com um valor de 15000, equivalente a 15 segundos;
Altere este valor para algo em torno de 900000, equivalente a 15 minutos;
- para desabilitar o cache no Google Chrome, é necessário alterar os atalhos do sistema, responsáveis por disparar a execução do navegador, e acrescentar argumentos de linha de comandos, conforme exemplo:
bash$ google-chrome-stable --disk-cache-size=1 --media-cache-size=1 &
Aqui o valor 0 não tem efeito, então deve-se limitar a 1MB;
Esta primeira publicação é apenas um teste de postagem no blogspot. As etapas aqui descritas foram testadas inicialmente em máquina virtual com VirtualBox, depois aplicadas em 2 desktops com Ubuntu MATE.
Comentários