Redes y Sistemas

8 tips para optimizar un SSD en Linux

Tal y como comentaba en un post anterior, hoy hablaremos de la configuración para discos SSD, pero esta vez bajo un entorno.

Publicado el 15 de Abril de 2014
Compartir

Tal y como comentaba en un post anterior , hoy hablaremos de la configuración para discos SSD , pero esta vez bajo un entorno Linux ; ligeramente más laborioso que en Windows, pero apreciaremos el rendimiento de manera inmediata.

Al igual que en sistema de la casa Microsoft, es recomendable utilizar un disco duro mecánico para almacenar toda la información o datos que puedan ir cambiando más asiduamente (multimedia, descargas, etc...), y dejar el disco SSD para alojar el sistema operativo y los programas cuyo rendimiento nos interese más.

En el caso que nos ocupa, hay muchísimo escrito en Internet, desde usuarios que tratan su SSD como si de un disco mecánico se tratase, hasta quienes extreman y cuidan tanto los ciclos de escritura que sacrifican cómodas tareas por ahorrarse un par de consultas a las memorias NAND que componen los SSD. Así que lo que haremos será daros una serie de consejos o 'tips' para que cada uno aplique aquellos que considere  adecuados en su uso. Comenzamos!

1 . Empezaremos con un paso en común con la configuración para Windows, que es la configuración del disco en la placa base , para establecerlo en el modo AHCI . Poco podemos indicaros desde este post, existiendo tantísimas interfaces de bios como hay hoy día, así que generalmente, este ajuste suele estar en la configuración avanzada, generalmente bajo una etiqueta como "configuración SATA".

2 . Actualizar el firmware del disco es una acción muy recomendada, ya que estos firmwares a medida que se actualizan (generalmente...) van optimizando los accesos y repartición de sectores del disco. Por norma general suelen venir actualizados, pero no está de más echar un vistazo a la web del fabricante, por si se da el caso en el que ha salido una actualización reciente de la que nos podemos beneficiar.

3 . A la hora de instalar el sistema operativo, la mejor opción para el formato de la partición será EXT4 , dado que es la que menos ciclo de escritura causa de entre todos los formatos a elegir en este paso.

4 . Establecer "noatime" . El sistema operativo lleva activa por defecto una acción de escritura de "fecha y hora de acceso" que se añade a cada archivo cuando está siendo leído por alguna aplicación del sistema. Establecer "noatime" ahorrará esta acción de escritura, alargando un poco más la vida útil de nuestro SSD.

  • Primero deberemos asegurarnos de que tenemos instaladas las aplicaciones gksu y leafpad.
  • En caso de que no las tengamos en el sistema, abrimos una terminal y escribimos:
    sudo apt-get install gksu leafpad
  • A continuación en la misma terminal y con las aplicaciones ya instaladas, escribimos la siguiente línea:
    gksudo leafpad /etc/fstab
  • Una vez en el archivo de configuración de las particiones, añadiremos "noatime" a la línea de la partición de la raíz, home, etc... en todas las particiones del SSD excepto en la de SWAP (si la tuviésemos). Las líneas deberían quedar aproximadamente de esta forma:
    UUID=f0ae2c59- 83d2-42e7-81c4-2e870b6b255d/ext4 noatime, errors=remount-ro 0 1
  • Guardamos el archivo de configuración y cerramos la terminal.

5 . Una acción de limpieza casi imprescindible para el correcto funcionamiento de los SSD a largo plazo es TRIM . Los SSD más actuales soportan TRIM, pero de 2010 hacia atrás (difícil de encontrar hoy día, pero no imposible...) no lo hacen, por lo que deberemos tenerlo en cuenta para evitar errores innecesarios.

Para activarlo automáticamente, lo más cómodo es añadirlo al arranque del sistema:

  • Abriremos una terminal y escribiremos lo siguiente:
    gksudo leafpad /etc/rc.local
  • Por encima de la línea
    exit 0
    añadiremos el comando
    fstrim -v
    en cada línea correspondiente a las particiones que se montan automáticamente durante el arranque. Nunca en aquellas pertenecientes a las particiones que no se montan por defecto, ni en la de intercambio.
  • Guardamos el archivo de configuración y reiniciamos el equipo para que TRIM pueda empezar a realizar su mantenimiento.

Otro método de hacer esto es mediante el comando ' cron ', es decir, programándolo para que se ejecute cuando más nos interese. Esto es muy práctico si nuestro equipo va a estar encendido 24/7, ya que en la opción anterior TRIM se ejecuta sólo al inicio, y con esta opción se llevará a cabo en el horario programado.

  • Abrimos una terminal y escribimos:
    gksudo leafpad /etc/cron.daily/trim
  • Con la orden anterior abriremos un archivo vacío, donde pegaremos el siguiente texto:
    #!/bin/sh fstrim -v/
    (para aquellos que tengan la raíz de 'home' en una partición separada deberán usar el siguiente código en lugar del anterior:
    #!/bin/sh/ fstrim -v/ && fstrim -v/home
    )
  • Guardamos el archivo.
  • Sin salir de la terminal escribimos lo siguiente:
    sudo chmod -x /etc/cron.daily/trim
    . Esto es para dar permisos de ejecución al archivo que hemos creado para que pueda ejecutarse con las tareas programadas.

6 . Otra acción recomendable es reajustar la SWAP , o más bien, el acceso que el sistema hace a dicha partición. La partición SWAP se usa cuando la carga de la memoria RAM es extrema. Algunos usuarios optan por omitir dicha partición, ya que consideran que con su RAM y la eficiencia del SSD se puede prescindir de dedicar espacio en disco a este menester. Yo personalmente no soy partidario de esta práctica. Por lo que recomiendo es restringir parcialmente el acceso a la partición de intercambio. Disminuyendo un valor en los ajustes, será necesaria más carga del sistema, para que este acceda a la SWAP, retrasando lo máximo posible los ciclos de escritura en esta partición. Está establecida una escala de 0 a 100, donde el valor por defecto del sistema es 60, y nosotros lo bajaremos a 50 además ampliaremos la frecuencia de acceso al disco para limitar estos accesos innecesarios.

  • Abrimos una terminal y para comprobar el estado de nuestro valor de swappiness escribiremos:
    cat/proc/sys/vm/swappiness
    . El resultado por defecto probablemente será 60.
  • Escribimos ahora en la terminal:
    gksudo leafpad /etc/sysctl.conf
    y añadiremos al final del archivo las siguientes líneas con sus respectivos comentarios explicativos:
##Reducir la inclinación hacia la swap
vm.swappiness=1
#Mejora de la gestión de caché
vm.vfs_cache_pressure=50
#Modificar la frecuencia de acceso al disco
vm.dirty_writeback_centisecs=1500
  • Guardamos el archivo y reiniciamos para que se apliquen los cambios.

7 . Limitar las acciones de escritura de los navegadores es un paso casi imprescindible, dado que todas las páginas que visitemos, escribirán en la caché de nuestro sistema, y eso son ciclos de escritura que evitar. Para ello dependerá del navegador que usemos el dónde editar esta configuración.

- Firefox . Nos dirigimos a Panel de Firefox>Editar>Preferencias>Avanzadas>Ficha Red y en el apartado que pone caché de contenido web, establecerlo a 0. - En caso de que también tengamos instalado Oracle Java, limitar igualmente las acciones de escritura del Plugin de Java en Panel de control de Java>Ficha General>Archivos temporales de Internet>Configuración y eliminamos el tick de la opción "Mantener los archivos temporales en mi equipo".

- Chrome/Chromium . Una vez abierto el navegador, pulsamos la tecla F12 con lo que abriremos la consola de desarrollador. Hacemos clic en la rueda dentada de configuración que se encuentra en la parte inferior derecha, donde deberemos marcar la opción "Desactivar Caché". Para cerrar la consola de desarrollador pulsaremos de nuevo F12. A tener en cuenta, que esto es un ajuste de preferencias de usuario, por lo que con cada cuenta que se inicie en el equipo, se deberá realizar este ajuste.

8 . Montar temporales en la memoria RAM . Esta práctica sólo es recomendable para aquellos que dispongan de una cantidad mínima de 4Gb, aunque me he encontrado con un par de problemas que me hacen recomendaros al menos 6Gb para evitar sorpresas desagradables. Los temporales del sistema son algo que no siempre requieren los programas, puesto que generan estos archivos cada vez que iniciamos las aplicaciones en función de las tareas que llevemos a cabo, así que el hecho de que desaparezcan con cada reinicio no afectará negativamente a nuestro rendimiento.

  • Abrimos una terminal en nuestro sistema y escribimos lo siguiente:
    gksudo leafpad /etc/fstab
  • Ahora dejaremos la configuración de tmpfs tal que así:
    mpfs /tmp tmpfs defaults,noatime,nodiratime,mode=1777 0 0
    .

Como decía, hay muchísimo escrito sobre estas configuraciones a lo largo y ancho de la red, pero esto es lo que considero menos radical y más funcional a la hora de alargar la vida útil de nuestro SSD . Estas indicaciones están centradas en un sistema en el que sólo se contempla una única unidad de almacenamiento SSD, para aquellos en los que además exista una unidad mecánica, todos los temporales y directorios de caché se pueden mover a esa unidad mecánica, ya a gusto de cada usuario.

Espero que esta información os sea de utilidad, y recordad suscribiros para estar al día de los artículos, noticias, webinars y cursos más novedosos y prácticos de la web. Saludos!


Compartir este post

También te puede interesar...

Linux desde Cero

Curso para aprender Linux desde cero

7 horas y 3 minutos · Curso

Un curso de Linux para aprender todo lo necesario para administrar sistemas Linux, perfecto para programadores y administradores de sistemas.

  • Sistemas Operativos
Tecnología

20 comandos para administrar y gestionar fácilmente procesos en Linux

17 Diciembre 2015 Esaú Abril Nuñez
Tecnología

15 atajos de teclado imprescindibles para Linux

28 Octubre 2015 Esaú Abril Nuñez
Artículos
Ver todos