Activar TRIM Ubuntu 14.04 a 18.04



TRIM está disponible en Linux desde la versión 2.6.33, es una instrucción que le permite al sistema operativo comunicarle a un disco de estado sólido (SSD) qué bloques de datos ya no están en uso. En sistemas de archivos tradicionales, el disco duro nunca sabe qué información es borrada, pues el sistema de archivo la marca como espacio disponible en su estructurada de datos en RAM. Al poder ser notificado de bloques borrados, el firmware del SSD puede balancear la escritura de información en otras celdas de forma que pueda prolongar la vida útil del mismo.

A partir de Ubuntu 14.04 TRIM viene activado por defecto, pero no para todos los discos duros (tan solo para los discos Intel y Samsung)

Podemos hacer un trim de forma manual cada vez que queramos con el siguiente comando:

sudo fstrim -v /

Y nos devolverá algo parecido a esto:

/: 8158715904 bytes were trimmed

Para los que usen una particion home sería tal que así:

sudo fstrim -v /home


Con este método vamos a automatizar TRIM , hacer que trabaje con todos los discos SSD y dejar constancia de que funciona a través de un fichero de registro en el cual podemos ver la información de fecha, hora y datos liberados por la aplicación.

TRIM no funciona en particiones swap, según he podido leer un disco SSD no necesita swap, pero Ubuntu 16.04 sigue creándola de forma predeterminada.

Se realizarán las siguientes acciones:

1) Desactivar registro de acceso de los archivos (atime)


Access Time (o atime) es un campo definido en el sistema de archivos que indica la fecha del último acceso de un archivo.
En el caso particular de un SSD es interesante desactivar la actualización del atime porque prolonga la vida del SSD al no tener que estar escribiendo información irrelevante para cada acceso de lectura.
Para desactivar la actualización del atime, tanto para carpetas como para archivos se debe agregar la opción noatime a las opciones de montado de cada una de las particiones en las cuales queremos desactivarlo. En mi caso:

sudo gedit /etc/fstab

$ cat /etc/fstab

# / was on /dev/sda1 during installation

UUID=[MI-UUID] /           ext4         noatime,errors=remount-ro 0 1


Para la home, en caso de tenerla, sería así:

# /home was on /dev/sdax during installation
UUID=[MI-UUID] /home          ext4             noatime,defaults 0 2

2) Ajustar el planificador de disco.


Para ello usaremos cron que es un planificador que usaremos semanalmente mediante un script

Vamos a la terminal y escribimos:

sudo gedit /etc/cron.weekly/fstrim

Se abrirá un documento, que según que versión de Ubuntu utilices, aparecerá en blanco o habrá que editarlo, de cualquier manera,  pegaremos o sustituiremos por el siguiente código:

#!/bin/sh
LOG=/var/log/trim.log
echo "*** $(date -R) ***" >> $LOG
fstrim -v / >> $LOG
#fstrim -v /home >> $LOG

La última linea tiene comienza con # porque yo no estoy usando la partición Home, si la usas quitala.

Guardamos y cerramos el documento.

Tan solo nos queda hacer el archivo ejecutable con el siguiente comando:

sudo chmod +x /etc/cron.weekly/fstrim

Ubuntu ejecutará el cron semanalmente por lo que una vez a la semana hará un TRIM.

Se puede comprobar el /var/log/trim.log archivo de registro para ver la salida fstrim.




Como se puede ver en la imagen superior, el invento funciona. Semanalmente nos deja un registro con la fecha, hora y datos trimmed.







Comentarios

Entradas populares de este blog

TP-Link WR841ND repetidor WIFI

Instalar y Configurar aMule en Ubuntu

II. Vodafone Technicolor Tc7230 modo bridge.