Este método no solo sirve para la Raspberry, pero es ideal para ella, ya que en el caso de mi Raspberry 3, solo tiene 1Gb de RAM y para la nueva versión de Ubuntu, sumado a todo lo que quiero correr en ella, se queda un poco corta.
Además, el punto fuerte es no tener que quemar mi SD a base de lecturas y escrituras con la memoria Swap.
Desde la versión 3.14, ZRAM viene incluida en el kernel de Linux. ZRAM comprime los datos de la Swap y los almacena en la RAM, no utilizando la tarjeta SD de la Raspberry o Disco Duro de un PC, ganando más velocidad.
Por contra, haremos trabajar más a la CPU comprimiendo los datos.
Vamos a utilizar el script de Novaspirit disponible en GitHub, para hacerlo de un modo rápido y seguro.
sudo wget -O /usr/bin/zram.sh https://raw.githubusercontent.com/Bash-Projects/rpi_zram/master/zram.sh
Damos permisos de ejecución
sudo chmod +x /usr/bin/zram.sh
Creamos un script para iniciar zram. Recuerda que el usuario que estoy utilizando es angel, sustitúyelo por el tuyo.
Voy a meter el script en la carpeta scripts
mkdir ~/scripts
Creo y abro el archivo con nano
nano /home/angel/scripts/zram.sh
Copio el siguiente contenido
#!/bin/bash
/usr/bin/zram.sh &
sudo crontab -e
Sustituye nuevamente angel por tu usuario.
@reboot ( sleep 50 ; sudo /home/angel/scripts/zram.sh )
50 segundos tras el inicio del sistema, se ejecutará el script de zram.sh.
Reinicia
sudo reboot now
Vamos a ver si ya se nos ha ampliado la memoria y estamos utilizando zram.
free -h
Como podemos comprobar, hemos doblado el tamaño de RAM. Ahora la Swap, tiene el mismo tamaño que la memoria RAM.
swapon -s
Mediante este comando, podemos ver como consta de cuatro bloques iguales (en el caso de la Raspberry 3), uno por cada núcleo de la CPU.
Un modo más gráfico es utilizar
htop
Publicado por Angel el Saturday 09 May del 2020
También te puede interesar:
Powered by org-bash-blog
Written in OrgMode with Emacs and converted to HTML with Pandoc
Este obra está bajo una licencia de Creative Commons Reconocimiento-NoComercial-CompartirIgual 4.0 Internacional.