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. |
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.
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 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% /
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 amministrativi 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 a questo metodo per l'abilitazione del TRIM è possibile seguire le istruzioni del successivo paragrafo.
Pianificazione di un'operazione giornaliera di cron
Aprire con un editor di testo ed i privilegi amministrativi il file /etc/cron.daily/trim ed incollarvi 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 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
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
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.
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 ed aggiornare Grub con il comando:
sudo update-grub
Aprire con un editor di testo ed i privilegi amministrativi il file /etc/crypttab ed aggiungere l'opzione «discard» come nell'esempio succesivo:
#<target name> <source device> <key file> <options> var UUID=01234567-89ab-cdef-0123-456789abcdef none luks,discard
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.
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.
Per ottimizzare il funzionamento del TRIM e per preservare il drive SSD può risultare utile:
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.
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 questa guida.
Attivare le funzionalità di Preload e Prelink per velocizzare l'apertura dei programmi. Ciò è possibile seguendo la seguente procedura:
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.
Questa procedura potrebbe comportare un maggiore tempo di avvio del sistema operativo.