Como o Trim está ativado? [duplicado]

32

Ouvi dizer que o Ubuntu 14.04 terá Aparar ativado por padrão. Como isso será feito? Adicionando uma opção de descarte às opções de montagem ext4 ou executando um cron-job?

As opções padrão para Trim serão automaticamente compatíveis com as camadas LVM e de criptografia do Ubuntu padrão? criptografia do sistema?

Seria ótimo ver alguns detalhes sobre isso.

    
por student 05.04.2014 / 20:00

1 resposta

38

A alegação de que o 14.04 permitirá o ajuste por padrão é apenas metade da história.

Will the default options for TRIM be automatically compatible with the LVM and encryption layers of the standard ubuntu-system encryption?

O LVM é um contêiner e não é um sistema de arquivos, portanto, isso não é um problema.

Artigos que valem a pena ler:

Blueprint

SSDs need to be TRIMed, i. e. they need to be told which blocks the OS considers as "unused" (i. e. from deleted files). Withouth this, the write speed on SSDs becomes unbearably slow over time.

http://wiki.ubuntuusers.de/SSD/TRIM (German) explains the details, but this kind of housekeeping really should happen by default. There are two approaches to this, immediately marking the blocks as unused when deleting a file ("discard" mount option), or calling fstrim regularly. discard slows down deletion while a cronjob occasionally puts some potentially unexpected IO load on the machine, so this discussion is primarily about deciding which approach we want to do by default.

I (Martin Pitt) think that a cron approach is better. If we go with this we need to discuss when and how to run this:

  • Whats a reasonable interval (weekly/monthly/etc.)
  • How to detect devices/partitions which need trimming (/proc/mounts, hdparm -I, not mounted with "discard", etc.)

Conclusão desse link em alemão:

  • trabalho do cron semanalmente, já que o descarte resultará em um grande impacto no desempenho.

Somente os SSDs Intel e Samsung terão o TRIM habilitado por padrão no Ubuntu 14.04, porque alguns SSDs baratos podem até ser danificados ao executar o TRIM. O conteúdo de /etc/cron.weekly/fstrim em 14.04 beta 2:

#!/bin/sh
# call fstrim-all to trim all mounted file systems which support it
set -e

# This only runs on Intel and Samsung SSDs by default, as some SSDs with faulty
# firmware may encounter data loss problems when running fstrim under high I/O
# load (e. g.  https://launchpad.net/bugs/1259829). You can append the
# --no-model-check option here to disable the vendor check and run fstrim on
# all SSD drives.
exec fstrim-all

Isso não significa que o TRIM deve ser usado apenas com SSDs da Samsung e da Intel, mas para evitar problemas, essa é a opção padrão por enquanto. Observe que, se você já sabe que seu SSD pode manipular o TRIM, é possível ignorar a verificação do fornecedor editando o arquivo /etc/cron.weekly/fstrim acima e adicionando a opção --no-model-check à última linha:

exec fstrim-all --no-model-check

Alternativamente, você pode agendar manualmente TRIM de algumas outras maneiras. Como fazer manual .

Fonte: webupd8

  • MAS nem todos os SSDs são suportados. O meu não é a propósito (apenas verificado)
  • O LSI.com tem uma lista de SSDs compatíveis neste PDF .

O método para fazer o ajuste é com este comando:

sudo fstrim -v /

E também é assim que o Ubuntu faz isso: criando um cronjob que faz isso semanalmente.

Executado pelo meu próprio sistema:

[email protected]:~$ sudo fstrim -v /
[sudo] password for rinzwind: 
/: 93283299328 bytes were trimmed
[email protected]:~$ 

Leva um pouco de tempo e não mostra nenhum progresso até ser feito.

    
por Rinzwind 05.04.2014 / 20:42

Tags