## page was renamed from LucaGambardella/Prove6 #format wiki #language it <
> <> <> <> ## aleandrodasilva: quando aggiorni la pagina, fai un salto sul forum per informarci ;) = Introduzione = 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 Il '''TRIM''' è abilitato a livello hardware automaticamente negli SSD di marca Intel e Samsung. Inoltre è eseguito settimanalmente se si usa Ubuntu '''14.04''' o una versione successiva con un filesystem ext4 o btrfs.}}} = Requisiti hardware e software = Prima di abilitare il '''TRIM''' assicurarsi che: * Si utilizzi un kernel '''Linux 2.6.33''' o successivo. Per conoscere il kernel in uso sul sistema, digitare in un [[AmministrazioneSistema/RigaDiComando|terminale]] il comando : {{{ uname -a}}} * Si possegga 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..) 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à simile al seguente: {{{ Data Set Management TRIM supported (limit 8 blocks) }}} se il '''TRIM''' non è supportato, non verrà restituito alcun output. * Le partizioni di '''Ubuntu''' siano nel filesystem EXT4 o BTRFS, digitare in un terminale: {{{ df -T /}}} l'output sarà simile al seguente:{{{ File system Tipo 1K-blocchi Usati Disponib. Uso% Montato su /dev/sda2 btrfs 214355968 110098600 102694008 52% / }}} {{{#!wiki note }}} = 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 == 0. Aprire con un [[Ufficio/EditorDiTesto|editor di testo]] ed i [[AmministrazioneSistema/Sudo | privilegi amministrativi]] il file `/etc/fstab` ed aggiungere le opzioni «discard» (ed eventualmente anche «noatime») come nell'esempio successivo: {{{ # / 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 a questo metodo per l'abilitazione del '''TRIM''' è possibile seguire le istruzioni del successivo paragrafo. == Pianificazione di un'operazione giornaliera di cron == 0. Aprire con un [[Ufficio/EditorDiTesto| editor di testo]] ed i [[AmministrazioneSistema/Sudo | privilegi amministrativi]] il file `/etc/cron.daily/trim` ed incollarvi 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 l'ultima riga se non si ha una partizione `/home` separata. Se si hanno altre partizioni occorre aggiungere altre righe secondo la sintassi: {{{ fstrim -v /nome_partizione>> $LOG }}} 0. Prima di salvare le modifiche al file, testare se il comando '''fstrim''' funziona digitando in un terminale: {{{ sudo fstrim -v / }}} l'output dovrebbe essere simile a questo: {{{ /: 8158715904 bytes were trimmed }}} 0. Salvare a questo punto le modifiche e rendere lo script eseguibile con il comando: {{{ sudo chmod +x /etc/cron.daily/trim }}} == Partizioni criptate == Se si stanno utilizzando partizioni criptate occorrono uteriori passaggi affinché il tutto funzioni. 0. Aprire con un [[Ufficio/EditorDiTesto| editor di testo]] ed i [[AmministrazioneSistema/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 ed aggiornare '''Grub''' con il comando: {{{ sudo update-grub }}} 0. Aprire con un [[Ufficio/EditorDiTesto| editor di testo]] ed i [[AmministrazioneSistema/Sudo | privilegi amministrativi]] il file ` /etc/crypttab` ed aggiungere l'opzione «discard» come nell'esempio succesivo: {{{ # var UUID=01234567-89ab-cdef-0123-456789abcdef none luks,discard}}} 0. Salvare le modifiche e dare infine il 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`. {{{#!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.}}} Per ottimizzare il funzionamento del '''TRIM''' e per preservare il drive SSD può risultare utile: * 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. * Attivare la 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]]. * Attivare le funzionalità di '''Preload''' e '''Prelink''' per velocizzare l'apertura dei programmi. Ciò è possibile seguendo la seguente procedura: 0. [[AmministrazioneSistema/InstallareProgrammi|Installare]], se non presenti, i pacchetti [[apt://preload | preload]] e [[apt://prelink | prelink]]. 0. Aprire con i [[AmministrazioneSistema/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. {{{#!wiki important Questa procedura potrebbe comportare un maggiore tempo di avvio del sistema operativo.}}} = 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