Guia SSD no Linux: tudo que você precisa saber e o que precisa esquecer!

Após quebrar um pouco a cabeça buscando dados sobre a instalação do meu primeiro "disco de estado sólido", ou simplesmente SSD, resolvi escrever este artigo, compilando e atualizando todas as informações sobre SSD no Linux, visto que grande parte do material que é encontrado na internet é desatualizado e não condiz mais com os pacotes existentes e/ou funcionamento do GNU/Linux em relação a estes dispositivos.

[ Hits: 36.159 ]

Por: Esli Silva em 08/07/2017 | Blog: https://esli.blog.br


Suporte ao TRIM e opções de montagem no fstab



Suporte ao TRIM

O recurso TRIM limpa os blocos do SSD que não são mais usados pelo sistema de arquivos. Isso irá otimizar o desempenho de gravação a longo prazo e é recomendado em SSD devido ao seu design. Isso significa que o sistema de arquivos é capaz de dizer ao SSD sobre esses blocos.

A opção 'discard' ao montar um ext4 emitirá tais comandos TRIM quando os blocos do sistema de arquivos forem liberados (chama-se descarte online).

No entanto, esse comportamento implica um pouco sobrecarga de desempenho. Desde o Linux 2.6.37, você pode evitar o uso da opção 'discard' e fazer isto ocasionalmente com o FITRIM (por exemplo, a partir de um agendamento no crontab).

O utilitário fstrim também faz isso (on-line), bem como a opção '-E discard' do fsck.ext4.

Já com o Btrfs existe a opção na montagem de passar o parâmetro 'ssd'

Tanto para o Btrfs e Ext4 passe as opções 'noatime', 'notail' e 'nodiratime'.

O 'noatime' faz com que o sistema não atualize as propriedades dos arquivos quando eles são acessados, apenas quando são alterados, o que melhora bastante o desempenho.

O 'nodiratime' desativa o registro de data e hora para diretórios (colocando o nodiratime já implica no noatime). O 'notail' desabilita uma opção na qual o Filesystem usa o espaço sem uso de um bloco para armazenar o excesso de dados de outros blocos, ganhando assim mais espaço de armazenamento, porém cobrando a conta no quesito desempenho, desabilitando-o pode ser uma boa, porém não há ganhos significativos.

Estas duas opções também são aconselháveis para aumentar o desempenho em discos HD comuns e na qual você não necessita destas informações de data/hora dos acessos.

relatime X noatime/nodiratime

O noatime e o nodiratime desativam o 'atime', porém alguns aplicativos fazem uso dos dados atime, desligar este recurso pode gerar problemas pois alguns aplicativos contam com os dados do atime e falharão caso não esteja disponível.

O kernel usado no Red Hat Enterprise Linux 6 suporta outra alternativa, relatime. Relatime mantém dados do atime , mas não para cada vez que um arquivo é acessado. Com esta opção habilitada, os dados do atime são gravados no disco somente se um arquivo foi modificado desde que os dados do atime tenham sido atualizados (mtime), ou se o arquivo foi acessado pela última vez mais de um certo período de tempo atrás (por padrão, um dia).

Por padrão, todos os sistemas de arquivos são montados agora com o relatime habilitado. Para omitir este recurso em todo o sistema, use o parâmetro de inicialização default_relatime=0. Se relatime estiver ativado em um sistema por padrão, você pode omití-lo de qualquer sistema de arquivo específico montando aquele sistema de arquivo com a opção norelatime. Finalmente, para variar o período de tempo padrão antes do qual o sistema irá atualizar dados do atime de arquivo, use o parâmetro de inicialização relatime_interval= especificando o período em segundos. O valor padrão é 86400.

Ou seja, num sistema baseado no RHEL, ao invés de desativar o atime (com o nodiratime), instalar o fstrim e criar uma tarefa no CRONTAB para realizar ação, você simplesmente usa o relatime e insere um valor de tempo maior.

Porém, ao instalar a maioria das distros GNU/Linux, em mais de 95% delas, as opções 'discard' e 'noatime' já estarão ativas pois o instalador sabe que está sendo usado um disco SSD.

Ou seja, neste quesito: novamente, se você estiver usando uma distro atualizada e conhecida (ou derivada de uma das 4 grandes), não precisará fazer nada.

Página anterior     Próxima página

Páginas do artigo
   1. Mito e suporte do SSD
   2. MBR ou GPT e o File System
   3. Suporte ao TRIM e opções de montagem no fstab
   4. Schedulers e o Journaling
   5. Update, firmware, RAM e tmpfs
Outros artigos deste autor

Rootsh - Auditando/monitorando o root e demais usuários do GNU/Linux

Certificados e OpenSSL - A Sopa de Letras

DHCP no GNU/Linux - Guia para ISC-DHCP Server

Leitura recomendada

Ambiente gráfico MATE no Sabayon Linux

Proteção de tela ou vídeo como papel de parede

Desenhando um avatar do Tux no InkScape

Como fazer uma transição de imagens em vídeo com o OpenShot

Compiz Fusion: Ativando o efeito de "janela pegando fogo" e outros efeitos 3D

  
Comentários
[1] Comentário enviado por removido em 08/07/2017 - 11:47h

Excelente!

Favoritado.


*******************************************************
* https://www.linuxcounter.net/cert/620448.png *
*******************************************************

[2] Comentário enviado por removido em 08/07/2017 - 13:13h

Very good.
Favoritado.

[3] Comentário enviado por removido em 09/07/2017 - 22:38h


Gostei do comando.

cat /sys/block/sda/queue/rotational

Falta conteúdo sobre SSD aqui no VOL.

[4] Comentário enviado por rogeriofox em 14/07/2017 - 08:39h

Meu Debian 9 com SSD já fez uma configuração bem redondinha. Fiz minha instalação com o BRTFS e sempre tem algum ajuste fino. Seu artigo foi direto ao ponto. Parabéns!!!

[5] Comentário enviado por lexemail em 14/07/2017 - 09:46h

Ótimo artigo!
Só pra reforçar, instalei recentemente o Ubuntu em um ssd de 120gb como teste. Instalação normal e até agora nenhum problema. A única "coisa" que notei foi a velocidade, ficou muito rápido.

A honestidade, igualdade, responsabilidade, autruidade, perseverança e desejo de um mundo melhor, começa pelas nossas atitudes!

[6] Comentário enviado por sergeimartao em 14/07/2017 - 15:24h

Excelente artigo, muito esclarecedor!

[7] Comentário enviado por CheshireCat em 19/07/2017 - 16:17h

Muito bom, parabéns, me foi super útil!
Favoritado. <3

[8] Comentário enviado por nicolo em 25/07/2017 - 15:21h

Interessante, mas para quem não é expert uns exemplos dos comandos recomendados seriam muito úteis. Mais sensível no ítem do journaling que não é comum
dar essa opção nos comandos. Evidente que para quem já sabe tudo os exemplos são desnecessários.

[9] Comentário enviado por Eslih em 26/07/2017 - 10:25h


[8] Comentário enviado por nicolo em 25/07/2017 - 15:21h

Interessante, mas para quem não é expert uns exemplos dos comandos recomendados seriam muito úteis. Mais sensível no ítem do journaling que não é comum
dar essa opção nos comandos. Evidente que para quem já sabe tudo os exemplos são desnecessários.


Obrigado pelo feedback @nicolo pretendo atualizar o artigo futuramente e incluirei mais comandos e detalhes sobre as tecnologias e recursos que mencionei (com maior didática também).
Mesmo assim, espero ter conseguido ajudar ;-)

[10] Comentário enviado por wandersonbc em 31/07/2017 - 15:36h

Gostei demais do artigo, em especial da parte que abrange o TMPFS.

[11] Comentário enviado por pbonfanti em 25/07/2018 - 12:57h

Excelente artigo, eu não vejo nada tão completo desde que instalei debian no meu Asus EEEPC alguns anos atrás, quando todas essas preocupações eram pertinentes. Curiosamente a bateria faliu muito antes do SSD, o qual não chegou a me dar problemas.


Contribuir com comentário




Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts