9Sep
O Ubuntu quer habilitar o TRIM para SSDs por padrão no Ubuntu 14.04.Em outras palavras, o Ubuntu ainda não está usando o TRIM, então seu SSD está diminuindo a velocidade ao longo do tempo. Mas por que o Ubuntu já está usando o TRIM?
Esta notícia provavelmente será uma surpresa para muitas pessoas, que assumiram que o Ubuntu e outras distribuições Linux já estavam usando o TRIM.O TRIM evita que os SSD diminuam ao longo do tempo e é uma parte necessária da manutenção do SSD.
Por que TRIM é importante
Cobrimos por que o TRIM é importante antes. Quando você exclui um arquivo em um disco rígido antigo e magnético, o computador simplesmente marca esse arquivo como excluído. Os dados do arquivo falam no disco rígido - é por isso que os arquivos excluídos podem ser recuperados. O computador eventualmente substituirá os arquivos excluídos quando substituir seus setores por novos dados.
Unidades de estado sólido( SSDs) funcionam de forma diferente. Sempre que você escreve um arquivo em um SSD, o computador deve primeiro apagar todos os dados nos setores aos quais está escrevendo os dados. Não pode simplesmente "sobrescrever" os setores em uma única operação - primeiro deve limpar, então escreva para os setores vazios.
Isso significa que um SSD irá diminuir a velocidade ao longo do tempo. Escrever nos setores do SSD será rápido na primeira vez. Depois de excluir alguns arquivos e tentar escrever novamente, isso levará mais tempo. Esta é uma grande parte da razão pela qual o Nexus 7 original do Google desacelerou tanto ao longo do tempo. O Google corrigiu isso implementando o TRIM no Android 4.3.(O Android também usa o kernel do Linux.)
Com o TRIM ativado, o sistema operacional informa o SSD sempre que ele exclui um arquivo. A unidade pode então apagar os setores que contêm o conteúdo do arquivo, portanto, escrever para os setores será rápido no futuro.
Em outras palavras, se você não usar o TRIM, seu SSD diminuirá a velocidade ao longo do tempo.É por isso que os sistemas operacionais modernos, incluindo o Windows 7+, o Mac OS X 10.6.8+ e o Android 4.3+, utilizam o TRIM.O TRIM foi implementado no Linux em dezembro de 2008, mas o Ubuntu não o está usando por padrão.
Por que não o Ubuntu TRIM por padrão?
A verdadeira razão pela qual o Ubuntu não TRIM SSDs por padrão é porque a implementação do TRIM do kernel do Linux é lenta e resulta em desempenho fraco em uso normal.
No Windows 7 e 8, o Windows envia um comando TRIM sempre que ele exclui um arquivo, informando a unidade para excluir imediatamente os bits do arquivo. O Linux suporta isso quando os sistemas de arquivos são montados com a opção "descartar".No entanto, o Ubuntu - e outras distribuições - não fazem isso por padrão por motivos de desempenho.
O wiki do OpenSUSE contém algumas informações detalhadas de um desenvolvedor que está mais familiarizado com o kernel do Linux do que nós.É um pouco datado, mas provavelmente ainda é verdade quando se trata de desempenho:
"A implementação do kernel de trim em tempo real em 11.2, 11.3 e 11.4 não está otimizada. A especificação.chama o trim que suporta uma lista vetorial de intervalos de acabamento, mas a partir do kernel 3.0 trim é invocado apenas pelo kernel com um único intervalo de descarte / acabamento e com os SSD atuais de meados de 2011, isso provou causar uma degradação de desempenho em vez de um aumento de desempenho. Existem poucos motivos para usar o suporte de descarte em tempo real dos kernels com kernels pré-3.1.Não se sabe quando a funcionalidade de descarte de kernels será otimizada para funcionar de forma benéfica com SSDs de geração atual. "[Origem]
Em outras palavras, o kernel do Linux lida com esses comandos TRIM em tempo real de forma lenta e desproporcionada. Habilitando o TRIM como o Windows faz - ou seja, usando a opção "descartar" - resulta em que o sistema realmente se torna mais lento do que se o TRIM não fosse usado. Ubuntu e outras distribuições Linux não permitem "descartar" por padrão para seus sistemas de arquivos, e você também não deve.
Há Outra Velocidade
Porque a operação "TRABAR" em tempo real do kernel do Linux não funciona bem, a maioria das distribuições Linux - incluindo o Ubuntu - não usa o TRIM automaticamente. O Android também não usou o TRIM até o Android 4.3.
Mas há outra maneira de usar o TRIM.Em vez de simplesmente emitir o comando TRIM sempre que um arquivo é excluído, o recurso FITRIM pode ser usado. Isso acontece através do comando fstrim. Essencialmente, o comando fstrim analisa o sistema de arquivos e informa a unidade, cujos blocos não são mais necessários, então a unidade pode descartá-los. Isso transforma TRIM de uma operação em tempo real em uma tarefa agendada. Em outras palavras, fstrim pode executar o TRIM como um trabalho cron. Não há motivos para não fazer isso. Não diminuirá qualquer coisa;É apenas mais uma tarefa de limpeza que o sistema deve realizar em uma programação.
Na verdade, esta é a abordagem que o Google levou com o Android 4.3.O Android simplesmente executa uma tarefa de fistrim ocasionalmente para TRIM o sistema de arquivos, corrigindo o problema que abrandou todos os Nexus 7s originais.
O Ubuntu também está olhando para habilitar o TRIM automaticamente, fazendo com que o sistema execute regularmente o FSTrim. Esperamos que seja parte do Ubuntu 14.04 para que os usuários do Ubuntu não sejam forçados a lidar com a degradação do desempenho do SSD ou a executar o Fstrim por conta própria.
Como habilitar TRIM
Não recomendamos montar seus sistemas de arquivos com a operação "descartar", pois isso provavelmente resultará em um desempenho mais lento em uso normal. No entanto, você pode usar o TRIM você mesmo executando ocasionalmente o comando fstrim ou criando seu próprio cronjob que funciona em um cronograma.
Para TRIM seu SSD no Ubuntu, basta abrir um terminal e executar o seguinte comando:
sudo fstrim -v /
Você pode executar ocasionalmente o comando acima para evitar a degradação do desempenho em SSDs. Com que frequência você precisa executá-lo, depende da frequência com que os arquivos são excluídos do seu SSD.Você verá um erro se tentar executar o comando com uma unidade que não suporte o TRIM.
Se você deseja executar o TRIM regularmente, você pode simplesmente criar um cronjob que executa o comando fstrim para você.Veja como fazer um trabalho cron barebones que fará isso automaticamente.
Primeiro, execute o seguinte comando para abrir o editor de texto nano com permissões de root:
sudo nano /etc/cron.daily/ fstrim
Digite o seguinte código no arquivo:
#!/bin/ sh
fstrim /
Salve o arquivo pressionando Ctrl + O e pressione Enter para confirmar. Pressione Ctrl + X para fechar nano após salvar o arquivo.
Por último, execute o seguinte comando para tornar o script executável:
sudo chmod + x /etc/cron.daily/ fstrim
O Ubuntu agora executará o fstrim em uma programação, assim como outras tarefas de manutenção do sistema.
Observe que o TRIM é suportado somente em sistemas de arquivos modernos, então você precisará de algo como ext4 e não ext3 ou ext2.Se você não sabe qual sistema de arquivos você está usando, não se preocupe - ext4 é selecionado por padrão.
Muito desse conselho também se aplica a outras distribuições Linux. Enquanto o Linux implementou o suporte TRIM no kernel há muito tempo, seu suporte TRIM parece nunca ter sido habilitado por padrão para usuários típicos em distribuições Linux.
Crédito da imagem: Mace Ojala no Flickr( recortado)