Come Ottimizzare SSD su Linux, e su Ubuntu

Pubblicato da Yuri Carlenzoli | 13 Marzo 2016

Ecco come ottimizzare SSD su Linux ed Ubuntu per garantire performance costanti nel tempo ed allo stesso tempo ridurne l'usura ed aumentarne la durata.
Preservare Performance SSD Allungare Durata
Al contrario di hard disk normali, meccanici, i quali per ottimizzarli bisogna principalmente velocizzarli tramite configurazioni hardware del BIOS e del sistema operativo, l'ottimizzazione degli SSD, dato che di loro sono molto veloci e viste le loro caratteristiche tecniche, consiste nel cercare di tenerli sempre veloci nel tempo, e, seppur costano molto meno di qualche anno fa per ottimizzarli bisogna cercare di farli durare il più possibile onde evitare di spendere soldi e/o perdere dati.

Quello che verrà detto in questo articolo per ottimizzare le prestazioni nel tempo e la durata di SSD sarà diviso in due parti, la prima più teorica e generale, che va bene per qualsiasi distribuzione, ma anche sistema operativo, la seconda più pratica e dedicata ad Ubuntu Linux, distribuzione con la quale sono stati fatti, testati e vengono utilizzati da anni i consigli qui riportati.

Differenze di ottimizzazione tra HD e SSD

La cosa principale che è possibile fare per ottimizzare e velocizzare un hard disk normale (HD od HDD) tramite software/sistema operativo è l'utilizzo della buffer cache dell'hard disk, ovvero la memoria aggiuntiva che gli evita nel possibile continui accessi (letture/scritture) sul disco, allo stesso tempo le cache delle applicazioni che fanno la stessa cosa praticamente.

Gli SSD invece sono molto veloci di loro, e, seppur siano diversi tipi di memorizzazione, dopo aver montato un SSD per preservarlo nel tempo bisogna fare la stessa cosa anche se più nel dettaglio, ovvero bisogna cercare di ridurre al minimo la lettura e scrittura, dato che, anche se con il passare del tempo e l'evoluzione tecnologica rende gli SSD sempre migliori, le celle di memoria si consumano, e, per mantenerne le prestazioni a lungo nel tempo evitando che si degradino bisogna in pratica sincronizzare quello che il sistema ha memorizzato sul filesystem con quello che il controller dei SSD hanno memorizzato, gli SSD infatti non "vedono" il filesystem.

Maggiore durata e prestazioni costanti di SSD su Ubuntu

Dopo aver introdotto riassuntivamente le non molte differenze teoriche che ci sono nell'ottimizzazione per la velocità gli hard disk e quelle che ci sono per ottimizzare la durata e le performance nel tempo degli SSD di seguito nel dettaglio sono elencate le ottimizzazioni da fare con Ubuntu Linux per far durare di più e non far degradare le prestazioni dei SSD.

TRIM

Il comando TRIM è quello che permette di mantenere le prestazioni degli SSD nel tempo, ovvero informa tramite il sistema il controller del SSD dei blocchi non in uso, per farlo non bisogna fare molto, anzi, su Ubuntu 14.04 viene fatto automaticamente ad intervalli regolari di ogni settimana per impostazione predefinita, su SSD Intel e Samsung.

Dalla versione di Ubuntu 14.04 LTS questo viene già fatto automaticamente, però viene fatto solo su SSD Intel e Samsung, modificando come root il file etc/cron.weekly/fstrim aggiungendo all'ultima riga l'opzione --no-model-check lo farà anche per le altre marche oppure lo si può fare manualmente.

Personalmente consiglio di farlo manualmente qualora non abbiate SSD Intel o Samsung dato che il carico di lavoro sul SSD mentre viene eseguito il trim è molto, se vi fossero applicazioni pesanti in uso anche se marginale ci sarebbe il rischio di perdere dati (su SSD non Intel o Samsung).

Per eseguire manualmente il trim, ad esempio sulla directory "/" e tutto quello che contiene, ovvero su tutto il filesystem basta digitare il comando sudo fstrim -v /, lo si fa manualmente una volta a settimana quando il computer non è sotto carico di lavoro e si è a posto, personalmente lo faccio anche quando copio/sposto/elimino/aggiungo grandi quantità di dati.

Usare il noatime per la partizione di Ubuntu

Linux di default, anche Ubuntu, memorizza ogni qual volta i files vengono aperti e modificati, seppur marginalmente, ma neanche molto, questa operazione automatica provoca accessi continui al SSD e/o al filesystem, con l'opzione noatime aggiunta al file /etc/fstab verranno memorizzati gli accessi solo ai files modificati, e non quelli aperti, ne consegue che le scritture sul SSD saranno minori.

Per modificare il file che gestisce la mappatura delle partizioni ("fstab" appunto) basta digitare nel terminale/nella shell sudo gedit /etc/fstab, e, dopo il tipo di partizione della directory radice (/), prima del resto basta inserire "noatime" seguito da virgola:
Aggiungere-Noatime-Fstab

Limita l'uso della cache

Fino ad un certo limite la cache è utile per velocizzare gli hard disk normali, ovvero troppo fa l'effetto contrario, in pratica l'utilizzo della cache delle applicazioni, ovunque, ovvero su qualsiasi programma con gli hard disk velocizza il sistema perché evita continua accessi al disco.

Si potrebbe pensare che vale lo stesso per gli SSD, però il problema della velocità degli accessi al disco non c'è, ma c'è quello della scrittura, e le cache scrivono informazioni, le cancellano le leggono e così via, è cosa saggia limitare l'utilizzo delle cache di tutti i programmi che ne fanno un utilizzo intenso, Firefox e Chrome ad esempio, ma anche LibreOffice o comunque tutti gli altri programmi utilizzati spesso dove nelle opzioni si può impostare la quantità di cache, anche l'anteprima del file manager la genera.

Disattiva l'ibernazione

Sopratutto se si usa un notebook con Ubuntu tra le opzioni di risparmio energetico ("Alimentazione" nelle impostazioni di Ubuntu) bisogna controllare se non è attiva l'ibernazione ma la sospensione e bisogna scegliere la sospensione (stand-by), questo perché l'ibernazione causa molti cicli di letture e scritture sull'hard disk, e su SSD la si deve ridurre al minimo se si tiene alla loro durata.

L'unico inconveniente, da nulla, facendo questo è che non sarà più possibile chiudere il coperchio del portatile e/o staccarlo dalla presa della rete elettrica se non è stata inserita la batteria (consigliato, ne allunga la vita), oppure se la batteria è quasi scarica il lavoro resterà salvato in automatico per poco, comunque con lo stand-by se vi servisse il notebook, usandolo, chiudendolo quando non lo usate e riaprirendolo all'occorrenza una giornata potrete comunque farla, ovviamente dipende da quanto lo utilizzate, delle altre impostazioni di risparmio energetico adottate e dalla vita media della batteria.

Non usare o limita al massimo la swap

Come la cache delle applicazioni, anche la swap fa sì che vengano fatti molti accessi al disco a stato solido oltre che a quello normale, quindi fa si che a lungo andare esso duri di meno, se si usano più di 4 GB di memoria RAM anche eliminando la swap totalmente le prestazioni del computer non ne risentono nella stragrande maggioranza dei casi di utilizzo.

Se si ha meno memoria RAM è comunque possibile limitare l'utilizzo della swap di Linux, senza ripetere quanto è già stato scritto nell'articolo indicato con link poco fa, dico solo che l'unica differenza nella procedura spiegata in quel post sta nel fatto che, per ridurre al massimo l'utilizzo della swap si dovrà creare ed impostare (tramite root/sudo) il valore vm.swappiness nel file /etc/sysctl.conf ad un valore molto basso, tra 10 ed 1, più è basso meglio è, più memoria di sistema avete più imposterete un valore basso.

Concludo l'articolo dicendo che i suggerimenti per aumentare la durata e le prestazioni nel tempo di SSD sopra riportati anche chi è poco esperto di Linux ed Ubuntu in poco tempo li farà, e, seppur non detto in dettaglio come farlo anche su altre distribuzioni è possibile farlo facilmente, non solo, anche su Windows, il killer degli SSD.

Thanks to first image to Yun Huang Yong.

Lascia un commento

Il tuo indirizzo email non sarà pubblicato. I campi obbligatori sono contrassegnati *

Moderazione dei commenti attiva. Il tuo commento non apparirà immediatamente.