Dimensione: 1257
Commento:
|
Dimensione: 10286
Commento: Inserito paragrafo nascosto
|
Le cancellazioni sono segnalate in questo modo. | Le aggiunte sono segnalate in questo modo. |
Linea 1: | Linea 1: |
## page was renamed from AmministrazioneSistema/Trim ## page was renamed from LucaGambardella/Prove6 #format wiki #language it <<BR>> <<Indice(depth=3)>> <<Informazioni(forum="http://forum.ubuntu-it.org/viewtopic.php?f=46&t=557066; rilasci="22.04 20.04 18.04";)>> ## aleandrodasilva: quando aggiorni la pagina, fai un salto sul forum per informarci ;) |
|
Linea 3: | Linea 12: |
Il TRIM consente al sistema operativo di comunicare al disco a stato solido (SSD) che blocchi di ati non sono più considerati in uso e possono essere cancellati internamente. Senza utilizzare il TRIM dopo un po' di tempo la velocità del disco diminuisce, se si possiede un disco che lo supporta è bene abilitarlo seguendo le istruzioni presenti in questa guida. | Il '''[[http://it.wikipedia.org/wiki/TRIM | TRIM]]''' consente al sistema operativo di comunicare al [[https://it.wikipedia.org/wiki/Unit%C3%A0_a_stato_solido|drive a stato solido (SSD)]] che blocchi di dati non sono più considerati in uso e possono essere liberati definitivamente. Lo scopo è di evitare inutili cicli di scrittura che con il tempo tendono a logorare le celle del drive (impropriamente detto disco). Se non si utilizza il '''TRIM''', dopo un po' di tempo, la velocità del disco diminuisce e le celle del drive vengono sovrascritte in modo disomogeneo. Quindi se si possiede un drive che lo supporta è consigliato abilitarlo seguendo le istruzioni presenti in questa guida. {{{#!wiki tip Negli SSD di marca Intel e Samsung, il '''TRIM''' è abilitato a livello hardware automaticamente. Inoltre è eseguito settimanalmente in '''Ubuntu 14.04 LTS''' e versioni successive. }}} ##= Verifica e monitoraggio = ## In caso di pubblicazione eliminare nota precedente! ## ##Negli SSD di marca Intel e Samsung, il '''TRIM''' è abilitato a livello hardware automaticamente. Inoltre è eseguito settimanalmente in '''Ubuntu 14.04 LTS''' e versioni successive tramite '''[[AmministrazioneSistema/Systemd|systemd]]'''. ## ##È possibile ottenere informazioni utili digitando nel [[AmministrazioneSistema/Terminale|terminale]] i comandi descritti di seguito. ## ## * '''Presenza del servizio''':{{{ ##systemctl list-timers --all ##}}} ## Se presente l'output restituirà una lista di cui riga sarà simile alla seguente:{{{ ##Mon 2022-07-11 00:00:00 CEST 2 days left Mon 2022-07-04 00:00:25 CEST 4 days ago fstrim.timer fstrim.service ##}}} ## ## * '''Abilitazione del servizio''':{{{ ##systemctl is-enabled fstrim.timer ##}}} ## Se abilitato l'output sarà il seguente:{{{ ##enabled ##}}} ## In caso contrario è possibile abilitarlo con il comando:{{{ ##sudo systemctl enable fstrim.timer ##}}} ## ## * '''Controllare lo stato del servizio''':{{{ ##systemctl status fstrim.timer ##}}} ## L'output conterrà diverse informazioni e sarà simile al seguente:{{{ ##● fstrim.timer - Discard unused blocks once a week ## Loaded: loaded (/lib/systemd/system/fstrim.timer; enabled; vendor preset: enabled) ## Active: active (waiting) since Fri 2022-07-08 10:02:29 CEST; 1h 48min ago ## Trigger: Mon 2022-07-11 00:00:00 CEST; 2 days left ## Triggers: ● fstrim.service ## Docs: man:fstrim ##}}} |
Linea 7: | Linea 58: |
Prima di abilitare il TRIM assicurarsi di: | Prima di abilitare il '''TRIM''' assicurarsi che: |
Linea 9: | Linea 60: |
* Usare un kernel Linux 2.6.33 o successivo. Per conoscere il kernel in uso sul sistema, digitare in un terminale il comando : {{{ uname -a}}} |
* Sia in utilizzo un kernel '''Linux 2.6.33''' o successivo. Per conoscere il kernel in uso sul sistema, digitare in un [[AmministrazioneSistema/Terminale|terminale]] il comando:{{{ uname -a }}} * Possedere un disco SSD che supporti il '''TRIM'''. Per verificare: 0. [[Hardware/DispositiviPartizioni/IndividuarePartizioni|Individuare il disco]] in uso (ad esempio `/dev/sda`, `/dev/sdb` ecc.). 0. Digitare il comando nel [[AmministrazioneSistema/Terminale|terminale]]:{{{ sudo hdparm -I /dev/sdx | grep "TRIM supported" }}} sostituendo «`sdx`» con il nome del disco, trovato precedentemente. 0. L'output restituito sarà simile al seguente:{{{ Data Set Management TRIM supported (limit 8 blocks) }}} Al contrario, se il '''TRIM''' non è supportato non verrà restituito alcun output. * Le partizioni di '''Ubuntu''' siano nel filesystem EXT4 o BRTFS, digitare in un [[AmministrazioneSistema/Terminale|terminale]] il seguente comando:{{{ cat /etc/mtab | grep ext4 }}} l'output sarà simile al seguente:{{{ /dev/sda1 / ext4 rw,errors=remount-ro 0 0 }}} se non vi sono partizioni formattate in EXT4, non verrà restituito alcun output. |
Linea 12: | Linea 78: |
* Possedere un disco che supporti il TRIM. In un terminale digitare il comando: {{{ sudo fdisk -l}}} per ottenere la lista delle partizioni e dei dischi presenti sul pc, questi ultimi avranno un nome del tipo sdx (ad esempio: sda, sdb, sdc, etc) |
{{{#!wiki note Poiché sono in pochi ad utilizzare il [[Hardware/DispositiviPartizioni/Btrfs/Introduzione#Manutenzione|filesystem BTRFS]], la guida verterà sull'abilitazione del TRIM sul [[Hardware/DispositiviPartizioni/MontarePartizioni/Ext4|filesystem EXT4]]. }}} = Abilitazione del TRIM = |
Linea 15: | Linea 84: |
Per assicurarsi che il proprio SSD supporti il trim, digitare il comando: {{{ sudo hdparm -I /dev/sdx | grep "TRIM supported"}}} sostituendo `sdx` con il nome del disco. L'output restituito sarà qualcosa del tipo: {{{ Data Set Management TRIM supported (limit 8 blocks) }}} Se il TRIM non è supportato, non verrà restituito alcun output. |
Una volta verificato che siano soddisfatti i requisiti visti nel precedente paragrafo, è possibile passare all'abilitazione del '''TRIM'''. == Abilitazione del TRIM attraverso fstab == 0. Aprire con un [[Ufficio/EditorDiTesto|editor di testo]] ed i [[AmministrazioneSistema/PrivilegiDiAmministrazione/Sudo|privilegi di amministrazione]] il file `/etc/fstab` ed aggiungere le opzioni «discard» (ed eventualmente anche «noatime») come nell'esempio successivo:{{{ <file system> <mount point> <type> <options> <dump> <pass> # / was on /dev/sdb1 during installation UUID=1cd2fc4f-7d99-4c7a-8ea7-6f9a2d5e5960 / ext4 discard,noatime,errors=remount-ro 0 1 }}} 0. Salvare le modifiche e riavviare il sistema. In alternativa è possibile seguire le istruzioni del successivo paragrafo. == Pianificazione di un'operazione giornaliera di cron == 0. Testare il funzionamento del comando '''fstrim''', digitando in un [[AmministrazioneSistema/Terminale|terminale]] il seguente comando:{{{ sudo fstrim -v / }}} l'output dovrebbe essere simile a questo:{{{ /: 8,9 GiB (9603432448 bytes) trimmed }}} 0. Aprire con un [[Ufficio/EditorDiTesto| editor di testo]] e i [[AmministrazioneSistema/PrivilegiDiAmministrazione/Sudo|privilegi amministrativi]] il file `/etc/cron.daily/trim` e incollare all'interno le seguenti righe:{{{ #!/bin/sh #!/bin/sh LOG=/var/log/trim.log echo "*** $(date -R) ***" >> $LOG fstrim -v / >> $LOG fstrim -v /home >> $LOG }}} Le ultime due righe abilitano il '''TRIM''' per la partizione root (`/`) e la partizione `/home`. Omettere quindi l'ultima riga se non per `/home` non è dedicata una [[Hardware/DispositiviPartizioni/SpostareHomePartizioneSeparata|partizione separata]].<<BR>> Se presenti altre partizioni occorre aggiungere altre righe seguendo la sintassi:{{{ fstrim -v /nome_partizione>> $LOG }}} 0. Salvare le modifiche e rendere lo script eseguibile digitando nel [[AmministrazioneSistema/Terminale|terminale]] il seguente comando:{{{ sudo chmod +x /etc/cron.daily/trim }}} == Partizioni criptate == Se si stanno utilizzando partizioni criptate occorrono ulteriori passaggi affinché il tutto funzioni. 0. Aprire con un [[Ufficio/EditorDiTesto| editor di testo]] ed i [[AmministrazioneSistema/PrivilegiDiAmministrazione/Sudo|privilegi amministrativi]] il file `/etc/default/grub`. 0. Modificare la riga:{{{ GRUB_CMDLINE_LINUX="" }}} in {{{ GRUB_CMDLINE_LINUX="allow-discards root_trim=yes" }}} 0. Salvare il file e [[AmministrazioneSistema/Grub#Comandi|aggiornare]] '''Grub''' con il comando:{{{ sudo update-grub }}} 0. Aprire con un [[Ufficio/EditorDiTesto|editor di testo]] e i [[AmministrazioneSistema/PrivilegiDiAmministrazione/Sudo|privilegi di amministrazione]] il file `/etc/crypttab` e aggiungere l'opzione «`discard`» come nell'esempio successivo:{{{ #<target name> <source device> <key file> <options> var UUID=01234567-89ab-cdef-0123-456789abcdef none luks,discard }}} 0. Salvare le modifiche e digitare nel [[AmministrazioneSistema/Terminale|terminale]] il seguente comando:{{{ sudo update-initramfs -u -k all }}} = Ottimizzazione del TRIM = Quando il TRIM è abilitato nativamente (in Ubuntu 14.04 e successivi, installati su filesystem ext4), lo script che lo esegue con cadenza settimanale, tramite '''crontab''', è presente nel file `/etc/cron.weekly/fstrim`. Nei paragrafi successivi sono presenti ulteriori consigli per ottimizzare il funzionamento del '''TRIM''' e per preservare il drive SSD. {{{#!wiki important Anche se tecnicamente possibile, in generale si sconsiglia di eseguire lo script giornalmente spostando il file in questione nella cartella `/etc/cron.daily`. }}} {{{#!wiki tip Sono disponibili strumenti di terze parti come [[http://chmatse.github.io/SSDcronTRIM/|SSDcronTRIM]]. Quest'ultimo è uno script che controlla lo stato del drive ed esegue il TRIM solo quando necessario. Per maggiori informazioni consultare il sito del progetto.}}} == Swap == Disattivare la partizione di [[Hardware/DispositiviPartizioni/SwapDomandeFrequenti|swap]] se si hanno a disposizione più di 4GB di RAM oppure di utilizzarla su un altro disco rigido interno, se presente. == Funzione di Over Provisioning == A tal fine è sufficiente riservare dello spazio non allocato in fondo al drive. La maggior parte dei produttori generalmente consiglia di riservare circa il 7-10% dello spazio totale del disco a tale scopo. In ogni caso si raccomanda di consultare il manuale relativo all'SSD in uso, se disponibile, oppure di contattare i canali di assistenza del produttore. Per maggiori informazioni sulle procedure di partizionamento consultare invece [[Hardware/DispositiviPartizioni/PartizionamentoManuale|questa guida]]. == Funzione di Preload e Prelink == {{{#!wiki important Questa procedura potrebbe comportare un maggiore tempo di avvio del sistema operativo. }}} 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. = Ulteriori risorse = * [[http://www.webupd8.org/2013/01/enable-trim-on-ssd-solid-state-drives.html | Documento originale]] * [[https://wiki.archlinux.org/index.php/Solid_State_Drives | Guida su wiki di Archlinux]] ---- CategoryAmministrazione |
Guida verificata con Ubuntu: 22.04
Problemi in questa pagina? Segnalali in questa discussione
Introduzione
Il TRIM consente al sistema operativo di comunicare al drive a stato solido (SSD) che blocchi di dati non sono più considerati in uso e possono essere liberati definitivamente. Lo scopo è di evitare inutili cicli di scrittura che con il tempo tendono a logorare le celle del drive (impropriamente detto disco).
Se non si utilizza il TRIM, dopo un po' di tempo, la velocità del disco diminuisce e le celle del drive vengono sovrascritte in modo disomogeneo. Quindi se si possiede un drive che lo supporta è consigliato abilitarlo seguendo le istruzioni presenti in questa guida.
Negli SSD di marca Intel e Samsung, il TRIM è abilitato a livello hardware automaticamente. Inoltre è eseguito settimanalmente in Ubuntu 14.04 LTS e versioni successive.
Requisiti hardware e software
Prima di abilitare il TRIM assicurarsi che:
Sia in utilizzo un kernel Linux 2.6.33 o successivo. Per conoscere il kernel in uso sul sistema, digitare in un terminale il comando:
uname -a
Possedere un disco SSD che supporti il TRIM. Per verificare:
Individuare il disco in uso (ad esempio /dev/sda, /dev/sdb ecc.).
Digitare il comando nel terminale:
sudo hdparm -I /dev/sdx | grep "TRIM supported"
sostituendo «sdx» con il nome del disco, trovato precedentemente.
L'output restituito sarà simile al seguente:
Data Set Management TRIM supported (limit 8 blocks)
Al contrario, se il TRIM non è supportato non verrà restituito alcun output.
Le partizioni di Ubuntu siano nel filesystem EXT4 o BRTFS, digitare in un terminale il seguente comando:
cat /etc/mtab | grep ext4
l'output sarà simile al seguente:
/dev/sda1 / ext4 rw,errors=remount-ro 0 0
se non vi sono partizioni formattate in EXT4, non verrà restituito alcun output.
Poiché sono in pochi ad utilizzare il filesystem BTRFS, la guida verterà sull'abilitazione del TRIM sul filesystem EXT4.
Abilitazione del TRIM
Una volta verificato che siano soddisfatti i requisiti visti nel precedente paragrafo, è possibile passare all'abilitazione del TRIM.
Abilitazione del TRIM attraverso fstab
Aprire con un editor di testo ed i privilegi di amministrazione il file /etc/fstab ed aggiungere le opzioni «discard» (ed eventualmente anche «noatime») come nell'esempio successivo:
<file system> <mount point> <type> <options> <dump> <pass> # / was on /dev/sdb1 during installation UUID=1cd2fc4f-7d99-4c7a-8ea7-6f9a2d5e5960 / ext4 discard,noatime,errors=remount-ro 0 1
- Salvare le modifiche e riavviare il sistema.
In alternativa è possibile seguire le istruzioni del successivo paragrafo.
Pianificazione di un'operazione giornaliera di cron
Testare il funzionamento del comando fstrim, digitando in un terminale il seguente comando:
sudo fstrim -v /
l'output dovrebbe essere simile a questo:
/: 8,9 GiB (9603432448 bytes) trimmed
Aprire con un editor di testo e i privilegi amministrativi il file /etc/cron.daily/trim e incollare all'interno le seguenti righe:
#!/bin/sh LOG=/var/log/trim.log echo "*** $(date -R) ***" >> $LOG fstrim -v / >> $LOG fstrim -v /home >> $LOG
Le ultime due righe abilitano il TRIM per la partizione root (/) e la partizione /home. Omettere quindi l'ultima riga se non per /home non è dedicata una partizione separata.
Se presenti altre partizioni occorre aggiungere altre righe seguendo la sintassi:fstrim -v /nome_partizione>> $LOG
Salvare le modifiche e rendere lo script eseguibile digitando nel terminale il seguente comando:
sudo chmod +x /etc/cron.daily/trim
Partizioni criptate
Se si stanno utilizzando partizioni criptate occorrono ulteriori passaggi affinché il tutto funzioni.
Aprire con un editor di testo ed i privilegi amministrativi il file /etc/default/grub.
Modificare la riga:
GRUB_CMDLINE_LINUX=""
in
GRUB_CMDLINE_LINUX="allow-discards root_trim=yes"
Salvare il file e aggiornare Grub con il comando:
sudo update-grub
Aprire con un editor di testo e i privilegi di amministrazione il file /etc/crypttab e aggiungere l'opzione «discard» come nell'esempio successivo:
#<target name> <source device> <key file> <options> var UUID=01234567-89ab-cdef-0123-456789abcdef none luks,discard
Salvare le modifiche e digitare nel terminale il seguente comando:
sudo update-initramfs -u -k all
Ottimizzazione del TRIM
Quando il TRIM è abilitato nativamente (in Ubuntu 14.04 e successivi, installati su filesystem ext4), lo script che lo esegue con cadenza settimanale, tramite crontab, è presente nel file /etc/cron.weekly/fstrim.
Nei paragrafi successivi sono presenti ulteriori consigli per ottimizzare il funzionamento del TRIM e per preservare il drive SSD.
Anche se tecnicamente possibile, in generale si sconsiglia di eseguire lo script giornalmente spostando il file in questione nella cartella /etc/cron.daily.
Sono disponibili strumenti di terze parti come SSDcronTRIM. Quest'ultimo è uno script che controlla lo stato del drive ed esegue il TRIM solo quando necessario. Per maggiori informazioni consultare il sito del progetto.
Swap
Disattivare la partizione di swap se si hanno a disposizione più di 4GB di RAM oppure di utilizzarla su un altro disco rigido interno, se presente.
Funzione di Over Provisioning
A tal fine è sufficiente riservare dello spazio non allocato in fondo al drive. La maggior parte dei produttori generalmente consiglia di riservare circa il 7-10% dello spazio totale del disco a tale scopo. In ogni caso si raccomanda di consultare il manuale relativo all'SSD in uso, se disponibile, oppure di contattare i canali di assistenza del produttore. Per maggiori informazioni sulle procedure di partizionamento consultare invece questa guida.
Funzione di Preload e Prelink
Questa procedura potrebbe comportare un maggiore tempo di avvio del sistema operativo.
Attivare le funzionalità di Preload e Prelink per velocizzare l'apertura dei programmi:
Installare, se non presenti, i pacchetti preload e prelink.
Aprire con i privilegi di amministrazione e con un editor di testo il file /etc/default/prelink.
Sostituire la stringa:
PRELINKING=unknown
con:
PRELINKING=yes
- Salvare le modifiche e chiudere il file.