Come abilitare TRIM per SSD in Ubuntu

Se stai usando un’unità a stato solido (SSD), dovresti sapere che non dovresti eseguire alcun software di deframmentazione o consolidamento dello spazio libero su di essa. Allora come pulire il tuo SSD e liberare lo spazio vuoto? TRIM è il comando che usiamo per informare il sistema operativo di eseguire l’operazione di pulizia. Windows 11 ti consente di eseguire manualmente TRIM attraverso il comando fsutil. Ma che dire di Ubuntu? Come puoi abilitare TRIM per SSD in Ubuntu?
Nota: I seguenti passaggi non funzioneranno se hai crittografato la tua partizione.
Indice dei contenuti
- Creare un lavoro cron TRIM per il tuo SSD
- Utilizzare l’opzione Discard in fstab
- Domande frequenti
Creare un lavoro cron TRIM per il tuo SSD
- Per assicurarti che l’SSD nel tuo computer supporti TRIM, apri un terminale e digita:
sudo hdparm -I/dev/sda
Se Ubuntu non è installato nella prima partizione dell’SSD, cambia sda per riflettere la partizione in cui si trova Ubuntu. Puoi farlo eseguendo lsblk.

- Scorri verso il basso nella lista fino a vedere la sezione “Enabled Supported”. Scorri ulteriormente e se vedi qualcosa come “Data Set Management TRIM supported (limit 8 blocks)“, allora TRIM è supportato per il tuo SSD.

- Testa se la funzione TRIM sta funzionando in Ubuntu. Nel terminale, digita:
sudo fstrim -v/Questo pulirà la partizione principale dell’SSD. Se ha successo, dovresti vedere qualcosa che somiglia alla seguente immagine.

- Imposta un lavoro cron affinché il sistema operativo invii il comando TRIM una volta al giorno.
sudonano/etc/cron.daily/trim- Incolla il seguente codice nell’area vuota:
#!/bin/sh
fstrim -v/- Se la tua directory HOME si trova su un’altra partizione, puoi aggiungere una linea aggiuntiva alla fine del codice sopra:
fstrim -v/home >>$LOG- Se desideri salvare l’output in un file di log, utilizza il seguente codice invece:
#!/bin/sh
LOG=/var/log/trim.log
echo"* $(date -R) *">>$LOG
fstrim -v/>>$LOG
fstrim -v/home >>$LOG
Salva (Ctrl + O) ed esci (Ctrl + X).
Rendi eseguibile il lavoro cron:
sudochmod a+x /etc/cron.daily/trim
Buono a sapere: cron è un’ottima utility che può aiutarti ad automatizzare le attività in Linux. Scopri come funziona e come puoi utilizzarla per i tuoi programmi.
Utilizzare l’opzione Discard in fstab
Oltre a invocare manualmente fstrim, puoi anche configurare il tuo sistema per “scartare” continuamente qualsiasi spazio vuoto non utilizzato sul tuo disco. Questo può essere utile se stai usando un laptop e non vuoi lasciare il computer acceso tutto il tempo.
- Controlla il valore UUID della tua partizione principale:
ls-l/dev/disk/by-uuid
- Apri il file “/etc/fstab” utilizzando il tuo editor di testo preferito. Nel mio caso, sto usando GNU Nano:
sudonano/etc/fstab- Trova l’entry della tua partizione principale nel file “/etc/fstab” premendo Ctrl + W e poi digitando il suo valore UUID.

- Vai all’entry della tua partizione principale e digita
discard,noatime,prima dell’opzione “errors=remount-ro”. Ad esempio, il mio file “/etc/fstab” ha la seguente entry per la partizione principale:
#
UUID=xxx / ext4 discard,noatime,errors=remount-ro 01
[...]
- Salva il tuo nuovo file “/etc/fstab” premendo Ctrl + O, poi Ctrl + X.

- Infine, riavvia la tua macchina per applicare le nuove impostazioni.

FYI: mentre TRIM eliminerà qualsiasi spazio libero sul tuo SSD, questo da solo non ti proteggerà dai programmi di recupero dati. Scopri come puoi eliminare in modo sicuro i tuoi dati utilizzando solo semplici strumenti da riga di comando.
Domande frequenti
Posso usare sia fstrim che discard sul mio SSD contemporaneamente?
Sì. Tuttavia, fare ciò non comporterà alcun miglioramento evidente né estenderà la vita del tuo SSD, poiché sia fstrim che discard utilizzano routine TRIM simili quando eliminano blocchi inutilizzati e liberi.
Sapendo questo, fstrim e discard differiscono in un punto chiave: la frequenza. Il primo accumula tutti i blocchi inutilizzati prima di “liberarli”, mentre il secondo “libera” un blocco non appena diventa non utilizzato. Questo significa che discard consumerà sempre più risorse di sistema e IO del disco rispetto a fstrim.
Il mio file /etc/fstab non ha un UUID per la sua partizione principale.
Questo è molto probabilmente dovuto al fatto che il tuo sistema sta utilizzando una scheda RAID hardware o un’utilità di gestione dei volumi logici (LVM). Per impostazione predefinita, TRIM funzionerà solo su sistemi che utilizzano partizioni disco tradizionali e file system come ext4.
Tuttavia, alcuni programmi LVM forniscono un’opzione utile per eseguire TRIM. In Ubuntu, puoi aggiungere issue_discards = 1 al tuo file “/etc/lvm/lvm.conf” per eseguire automaticamente TRIM su eventuali blocchi inutilizzati e liberi.
È possibile cambiare la frequenza del mio comando fstrim?
Sì. Per impostazione predefinita, Linux fornisce più file timer che ti permettono di regolare finemente quando desideri utilizzare fstrim. Ad esempio, puoi eseguire sudo mv /etc/cron.daily/trim /etc/cron.weekly/trim per cambiare la frequenza di TRIM da ogni giorno a ogni settimana.