Wiki Ubuntu-it

Indice
Partecipa
FAQ
Wiki Blog
------------------
Ubuntu-it.org
Forum
Chiedi
Chat
Cerca
Planet
  • Pagina non alterabile
  • Informazioni
  • Allegati
  • Differenze per "Hardware/DispositiviPartizioni/OttimizzareSSD"
Differenze tra le versioni 1 e 27 (in 26 versioni)
Versione 1 del 09/07/2022 11.17.49
Dimensione: 4161
Commento: prima stesura
Versione 27 del 12/07/2022 12.32.55
Dimensione: 9132
Commento:
Le cancellazioni sono segnalate in questo modo. Le aggiunte sono segnalate in questo modo.
Linea 10: Linea 10:
Questa guida contiene dei consigli pratici per migliorare le prestazioni e la durata delle unità di memoria [[https://it.wikipedia.org/wiki/Unit%C3%A0_a_stato_solido|drive a stato solido (SSD)]] su Ubuntu e derivate.

In linea molto generale, ciò che tende ad diminuire maggiormente la durata degli SSD sono il numero di scritture. Riducendo quest'ultime è possibile allungare considerevolmente la vita dei drive a stato solido.
Questa guida contiene dei consigli pratici per Ubuntu e derivate, finalizzati a migliorare le prestazioni e la durata degli [[https://it.wikipedia.org/wiki/Unit%C3%A0_a_stato_solido|SSD (drive a stato solido)]] (chiamati anche comunemente, ma in maniera impropria, dischi a stato solido).<<BR>>
Le indicazioni descritte di seguito sono principalmente volte a ridurre il numero di scritture sull'unità di memoria che, se elevato, può essere il maggior fattore di rischio per le performance e per il ciclo di vita degli SSD.
Linea 15: Linea 14:

Di seguito sono elencate alcune pratiche utili:
Linea 16: Linea 17:
 * Preferire SSD di produttori affidabili, ossia che rilasciano aggiornamenti firmware, manuali, canali di supporto ecc.
 * Non esagerare (!)
 * BIOS e UEFI impostati su AHCI
 * Firmware aggiornato
 * Selezionare il filesystem ext4 (o Btrfs)
 * Backup più frequenti
 * '''Preferire SSD di produttori affidabili:''' optare per produttori che rilasciano aggiornamenti firmware, offrono una manualistica adeguata per i loro prodotti, hanno validi canali di supporto ecc.
 * '''BIOS/UEFI impostato su [[https://en.wikipedia.org/wiki/Advanced_Host_Controller_Interface|AHCI]]:''' nelle impostazioni SATA assicurarsi che sia impostata la modalità AHCI e non IDE; in caso di dubbi fare riferimento alle istruzioni della propria scheda madre.
 * '''Firmware aggiornato:''' assicurarsi che l'SSD abbia l'ultima versione del firmware disponibile; anche in questo caso fare riferimento al sito web e/o alla informazioni rilasciate dal produttore.
 * '''Filesystem adeguato''': selezionare il filesystem ext4 (o [[Hardware/DispositiviPartizioni/Btrfs|Btrfs]]) in fase di [[Installazione/InstallareUbuntu|installazione]].
 * '''Effettuare [[AmministrazioneSistema/BackupDelSistema|backup]] più frequenti per evitare perdita di dati:''' benché negli ultimi anni gli SSD siano diventati sempre più affidabili, a differenza degli hard disk tradizionali meccanici, prima di deteriorarsi potrebbero non mostrare alcun sintomo di malfunzionamento.
 * '''[[AmministrazioneSistema/Aggiornamenti|Aggiornare]] frequentemente il sistema:''' in questo modo potrebbero essere risolti eventuali bug che impediscono il corretto funzionamento di alcuni modelli di SSD con il kernel Linux (ad esempio quelli inseriti dai manutentori in [[https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/tree/drivers/ata/libata-core.c#n3889|questa blacklist]]).
 * '''Macchine virtuali e sistemi in dual boot:''' in presenza di altri sistemi installati in queste modalità, adottare anche con questi appositi accorgimenti per evitare eccessive scritture sul drive (es.: con Windows evitare di deframmentare il filesystem).
Linea 23: Linea 25:
Di seguito, invece, sono elencate alcune pratiche da evitare:
Linea 24: Linea 27:
= Abilitare TRIM =  * '''Consultare guide datate:''' in anni recenti la tecnologia ha permesso di superare quelli che erano i limiti e i difetti dei primi SSD lanciati sul mercato. Pertanto alcuni accorgimenti validi in passato potrebbero essere superflui o addirittura dannosi.
 * '''Esagerare con gli accorgimenti:''' negli ultimi anni gli SSD si sono sempre più diffusi e stanno gradualmente sostituendo gli hard disk come storage di sistema. Di conseguenza anche i sistemi operativi hanno introdotto delle impostazioni per ottimizzare le prestazioni, che vengono attivate in automatico quando in fase di installazione viene rilevata la presenza di un SSD. Ne consegue che, nella maggior parte dei casi, non c'è bisogno da parte dell'utente di eseguire nessuna operazione particolare, se non l'adozione di alcuni piccoli accorgimenti.
Linea 26: Linea 30:
Consultare la [[guida dedicata]]. = Abilitare il TRIM =
Linea 28: Linea 32:
= Memoria di swap = Consultare la [[Hardware/DispositiviPartizioni/Trim|guida dedicata]].
Linea 30: Linea 34:
A seconda dei casi può essere utile:
 * Disattivare la swap (se si hanno a disposizione almeno 4/8 GB di RAM).
 * Impostare la swap su partizione o file dedicato su un disco rigido interno, se presente e possibile.
 * Aumentare il valore di swappiness.
= Operazioni sulla memoria di swap =
Linea 35: Linea 36:
Per tutte le procedure consultare questa [[Hardware/DispositiviPartizioni/SwapDomandeFrequenti|guida]]. Per tutte le procedure e gli accorgimenti consultare questa [[Hardware/DispositiviPartizioni/SwapDomandeFrequenti#Ho_un_disco_SSD._Quali_accorgimenti_devo_adottare.3F|guida]].
Linea 37: Linea 38:
= Accorgimenti non necessari e azioni dannose = = Spostare la cache di Firefox nella RAM (facoltativo) =
Consultare [[InternetRete/Navigazione/Firefox/Configurazione#Spostare_la_cache_nella_memoria_RAM|questa guida]].

= Opzioni in /etc/fstab (facoltativo) =

Per informazioni sulla modifica di `/etc/fstab` e le relative opzioni di montaggio consultare la [[AmministrazioneSistema/Fstab|guida]] dedicata, se necessario.

 * '''noatime''' (ext4 e btrfs): Quando il sistema accede a file o directory (sia in lettura che in scrittura) viene aggiornato un valore di ''atime'' (''access time''), ossia relativo agli orari di accesso agli inode presenti sul filesystem. Impostando l'opzione di montaggio '''noatime''' file di configurazione `/etc/fstab`, che impedisce la funzionalità descritta sopra, riducendo quindi le scritture sul drive.

## * '''relatime''' (ext4 e btrfs): simile al precedente, può essere usato come alternativa; aggiorna il valore di ''atime'' solo quando precedente all’ultima modifica (evitando anche problemi di compatibilità con alcuni programmi).

 * '''discard=async''' (btrfs): consigliato per uso server o per chi abbia necessità di liberare blocchi in continuazione; rispetto all'opzione '''discard''' comporta maggiore efficienza nell'eliminazione dei blocchi e minore latenza in lettura.

 * '''compress=zstd:1''' (btrfs): per informazioni consultare [[Hardware/DispositiviPartizioni/Btrfs/Introduzione#Compressione|questa guida]].

{{{#!wiki tip
In fase di installazione con filesystem btrfs il sistema è in grado di riconoscere automaticamente la presenza di un SSD. Viene quindi aggiunta in automatico l'opzione '''ssd''', che racchiude la maggior parte delle ottimizzazioni utili per questo tipo di dispositivi.
}}}

{{{#!wiki important
Attualmente __non__ è raccomandato l'utilizzo dell'opzione discard. Per maggiori informazioni consultare il [[#discard|paragrafo dedicato]].
}}}

= Accorgimenti superflui =
Linea 41: Linea 65:
L'overprovisioning è una tecnica ormai datata, che consiste nel riservare una porzione di spazio non allocato alla fine del drive.<<BR>>
Le nuove generazioni di SSD (approssimativamente dal 2014) hanno migliorato le tecnologie e i firmware, pertanto questo accorgimento non è più necessario, in quanto lo spazio non allocato non è accessibile all'utente.
L'[[https://it.wikipedia.org/wiki/Write_amplification#Over-provisioning|overprovisioning]], in parole semplici, è una tecnica ormai datata che consiste nel riservare una porzione di spazio non allocato alla fine del drive.<<BR>>
Le nuove generazioni di SSD (approssimativamente dal 2014) hanno migliorato le tecnologie e i firmware, pertanto questo accorgimento non è più necessario (ad esempio in certi modelli lo spazio non allocato è già presente, seppur non accessibile all'utente).
Linea 44: Linea 68:
Per i vecchi modelli è comunque possibile impostare questa funzionalità, previa consultazione del manuale del prodotto o dei canali i assistenza del produttore per conoscere la percentuale consigliata di spazio da riservare all'overprovisioning. Per i vecchi modelli è comunque possibile impostare questa funzionalità. In tal caso consultare il manuale del prodotto e/o contattare l'assistenza del produttore per conoscere la percentuale consigliata di spazio da riservare all'overprovisioning.
Linea 49: Linea 73:
[Consigliato in passato, ora i sistemi allineano alla dimensione ottimale di 4096 byte]
Linea 51: Linea 74:
== TRIM tramite rc.local ==
[[compilare o eliminare]]
In passato era consigliabile che le partizioni degli SSD fossero correttamente allineate. Oggi tutti gli strumenti dedicati al partizionamento allineano automaticamente le partizioni con settori della dimensione ottimale di 4096 byte, non rendendo quindi necessaria alcuna altra operazione.
Linea 54: Linea 76:
== TRIM tramite discard ==
Un metodo molto utilizzato in passato era di abilitare il TRIM automatico aggiungendo l'opzione discard nel file /etc/fstab.
= Azioni potenzialmente dannose =
Linea 57: Linea 78:
Anche se apparentemente efficace, questo metodo può causare rallentamenti in quanto obbliga il sistema ad eseguire il TRIM ad ogni eliminazione di file, con un notevole impiego di risorse. <<Anchor(discard)>>
== Opzione discard in /etc/fstab ==
Linea 59: Linea 81:
== Funzione di Preload e Prelink (?) ==
##reperire info!
Un metodo molto utilizzato in passato, oggi non raccomandato, era di abilitare il TRIM automatico aggiungendo l'opzione '''discard''' nel file `/etc/fstab`.
Linea 62: Linea 83:
{{{#!wiki important
Questa procedura potrebbe comportare un maggiore tempo di avvio del sistema operativo.
}}}
Anche se apparentemente efficace, oggi questo metodo risulta non conveniente o addirittura svantaggioso perché:
 * obbliga il sistema ad eseguire il TRIM continuamente e con il sistema avviato, dopo ogni singola eliminazione di file (nella maggior parte dei casi è sufficiente eseguirlo una volta a settimana o al giorno).
 * per il precedente motivo, può causare un notevole impiego di risorse con relativi rallentamenti frequenti del sistema.
 * nelle versioni recenti di Ubuntu il comando viene già eseguito gestito automaticamente da '''systemd'''.
Linea 66: Linea 88:
Attivare le funzionalità di '''Preload''' e '''Prelink''' per velocizzare l'apertura dei programmi:
  0. [[AmministrazioneSistema/InstallareProgrammi|Installare]], se non presenti, i pacchetti [[apt://preload|preload]] e [[apt://prelink|prelink]].
  0. Aprire con i [[AmministrazioneSistema/PrivilegiDiAmministrazione/Sudo|privilegi di amministrazione]] e con un [[Ufficio/EditorDiTesto|editor di testo]] il file `/etc/default/prelink`.
  0. Sostituire la stringa:{{{
PRELINKING=unknown
}}} con:{{{
PRELINKING=yes
}}}
  0. Salvare le modifiche e chiudere il file.
== TRIM in /etc/rc.local ==
Linea 76: Linea 90:
= Ibernazione = Una modalità utilizzata in passato era di eseguire il comando '''trim''' all'avvio del sistema, tramite apposita modifica al file `/etc/rc.local`.<<BR>>
Attualmente questa pratica non risulta conveniente in quanto:
Linea 78: Linea 93:
L'ibernazione (suspend-to-disk) è una funzionalità che richiede un numero elevato di operazioni di scrittura su disco.  * provoca tempi lunghi di avvio del sistema.
 * esegue poche volte il trim nei computer che rimangono spesso accesi.
 * nelle versioni recenti di Ubuntu il comando viene già eseguito e gestito automaticamente da '''systemd'''.

== Ibernazione ==

L'[[https://en.wikipedia.org/wiki/Hibernation_(computing)|ibernazione]] (''suspend-to-disk'') è una funzionalità che richiede un numero elevato di operazioni di scrittura su disco.
Linea 83: Linea 104:
 * [[https://easylinuxtipsproject.blogspot.com/p/ssd.html#ID1 | Documento originale]]
 * [[https://wiki.archlinux.org/index.php/Solid_State_Drives | Guida TRIM su wiki di Archlinux]]
 * [[https://easylinuxtipsproject.blogspot.com/p/ssd.html | Documento originale]]
 * [[https://wiki.debian.org/SSDOptimization|Wiki Debian
]]
 * [[https://wiki.archlinux.org/index.php/Solid_State_Drives | Wiki Arch]]
Linea 88: Linea 110:
##CategoryHardware CategoryAmministrazione


Attenzione! Questa è una Pagina di prova. Le informazioni riportate potrebbero essere incomplete, errate e potenzialmente pericolose. Per contribuire alla realizzazione di questa pagina consultare la discussione di riferimento.

Guida verificata con Ubuntu: 20.04 22.04

Problemi in questa pagina? Segnalali in questa discussione

Introduzione

Questa guida contiene dei consigli pratici per Ubuntu e derivate, finalizzati a migliorare le prestazioni e la durata degli SSD (drive a stato solido) (chiamati anche comunemente, ma in maniera impropria, dischi a stato solido).
Le indicazioni descritte di seguito sono principalmente volte a ridurre il numero di scritture sull'unità di memoria che, se elevato, può essere il maggior fattore di rischio per le performance e per il ciclo di vita degli SSD.

Consigli generali

Di seguito sono elencate alcune pratiche utili:

  • Preferire SSD di produttori affidabili: optare per produttori che rilasciano aggiornamenti firmware, offrono una manualistica adeguata per i loro prodotti, hanno validi canali di supporto ecc.

  • BIOS/UEFI impostato su AHCI: nelle impostazioni SATA assicurarsi che sia impostata la modalità AHCI e non IDE; in caso di dubbi fare riferimento alle istruzioni della propria scheda madre.

  • Firmware aggiornato: assicurarsi che l'SSD abbia l'ultima versione del firmware disponibile; anche in questo caso fare riferimento al sito web e/o alla informazioni rilasciate dal produttore.

  • Filesystem adeguato: selezionare il filesystem ext4 (o Btrfs) in fase di installazione.

  • Effettuare backup più frequenti per evitare perdita di dati: benché negli ultimi anni gli SSD siano diventati sempre più affidabili, a differenza degli hard disk tradizionali meccanici, prima di deteriorarsi potrebbero non mostrare alcun sintomo di malfunzionamento.

  • Aggiornare frequentemente il sistema: in questo modo potrebbero essere risolti eventuali bug che impediscono il corretto funzionamento di alcuni modelli di SSD con il kernel Linux (ad esempio quelli inseriti dai manutentori in questa blacklist).

  • Macchine virtuali e sistemi in dual boot: in presenza di altri sistemi installati in queste modalità, adottare anche con questi appositi accorgimenti per evitare eccessive scritture sul drive (es.: con Windows evitare di deframmentare il filesystem).

Di seguito, invece, sono elencate alcune pratiche da evitare:

  • Consultare guide datate: in anni recenti la tecnologia ha permesso di superare quelli che erano i limiti e i difetti dei primi SSD lanciati sul mercato. Pertanto alcuni accorgimenti validi in passato potrebbero essere superflui o addirittura dannosi.

  • Esagerare con gli accorgimenti: negli ultimi anni gli SSD si sono sempre più diffusi e stanno gradualmente sostituendo gli hard disk come storage di sistema. Di conseguenza anche i sistemi operativi hanno introdotto delle impostazioni per ottimizzare le prestazioni, che vengono attivate in automatico quando in fase di installazione viene rilevata la presenza di un SSD. Ne consegue che, nella maggior parte dei casi, non c'è bisogno da parte dell'utente di eseguire nessuna operazione particolare, se non l'adozione di alcuni piccoli accorgimenti.

Abilitare il TRIM

Consultare la guida dedicata.

Operazioni sulla memoria di swap

Per tutte le procedure e gli accorgimenti consultare questa guida.

Spostare la cache di Firefox nella RAM (facoltativo)

Consultare questa guida.

Opzioni in /etc/fstab (facoltativo)

Per informazioni sulla modifica di /etc/fstab e le relative opzioni di montaggio consultare la guida dedicata, se necessario.

  • noatime (ext4 e btrfs): Quando il sistema accede a file o directory (sia in lettura che in scrittura) viene aggiornato un valore di atime (access time), ossia relativo agli orari di accesso agli inode presenti sul filesystem. Impostando l'opzione di montaggio noatime file di configurazione /etc/fstab, che impedisce la funzionalità descritta sopra, riducendo quindi le scritture sul drive.

  • discard=async (btrfs): consigliato per uso server o per chi abbia necessità di liberare blocchi in continuazione; rispetto all'opzione discard comporta maggiore efficienza nell'eliminazione dei blocchi e minore latenza in lettura.

  • compress=zstd:1 (btrfs): per informazioni consultare questa guida.

In fase di installazione con filesystem btrfs il sistema è in grado di riconoscere automaticamente la presenza di un SSD. Viene quindi aggiunta in automatico l'opzione ssd, che racchiude la maggior parte delle ottimizzazioni utili per questo tipo di dispositivi.

Attualmente non è raccomandato l'utilizzo dell'opzione discard. Per maggiori informazioni consultare il paragrafo dedicato.

Accorgimenti superflui

Overprovisioning

L'overprovisioning, in parole semplici, è una tecnica ormai datata che consiste nel riservare una porzione di spazio non allocato alla fine del drive.
Le nuove generazioni di SSD (approssimativamente dal 2014) hanno migliorato le tecnologie e i firmware, pertanto questo accorgimento non è più necessario (ad esempio in certi modelli lo spazio non allocato è già presente, seppur non accessibile all'utente).

Per i vecchi modelli è comunque possibile impostare questa funzionalità. In tal caso consultare il manuale del prodotto e/o contattare l'assistenza del produttore per conoscere la percentuale consigliata di spazio da riservare all'overprovisioning.

Per informazioni sulle procedure di partizionamento e di ridimensionamento delle partizioni consultare questa guida.

Allineamento delle partizioni

In passato era consigliabile che le partizioni degli SSD fossero correttamente allineate. Oggi tutti gli strumenti dedicati al partizionamento allineano automaticamente le partizioni con settori della dimensione ottimale di 4096 byte, non rendendo quindi necessaria alcuna altra operazione.

Azioni potenzialmente dannose

Opzione discard in /etc/fstab

Un metodo molto utilizzato in passato, oggi non raccomandato, era di abilitare il TRIM automatico aggiungendo l'opzione discard nel file /etc/fstab.

Anche se apparentemente efficace, oggi questo metodo risulta non conveniente o addirittura svantaggioso perché:

  • obbliga il sistema ad eseguire il TRIM continuamente e con il sistema avviato, dopo ogni singola eliminazione di file (nella maggior parte dei casi è sufficiente eseguirlo una volta a settimana o al giorno).
  • per il precedente motivo, può causare un notevole impiego di risorse con relativi rallentamenti frequenti del sistema.
  • nelle versioni recenti di Ubuntu il comando viene già eseguito gestito automaticamente da systemd.

TRIM in /etc/rc.local

Una modalità utilizzata in passato era di eseguire il comando trim all'avvio del sistema, tramite apposita modifica al file /etc/rc.local.
Attualmente questa pratica non risulta conveniente in quanto:

  • provoca tempi lunghi di avvio del sistema.
  • esegue poche volte il trim nei computer che rimangono spesso accesi.
  • nelle versioni recenti di Ubuntu il comando viene già eseguito e gestito automaticamente da systemd.

Ibernazione

L'ibernazione (suspend-to-disk) è una funzionalità che richiede un numero elevato di operazioni di scrittura su disco. È disabilitata di default nelle versioni recenti di Ubuntu e derivate, ma comunque attivabile dall'utente. Se ne sconsiglia pertanto l'attivazione ai fini di questa guida.

Ulteriori risorse


CategoryHomepage CategoryNuoviDocumenti