Log2RAM es un script pensado para alargar la vida de tu microSD en la Raspberry Pi y similares.
Su creador, usa la Raspberry Pi como servidor para IoT y recopila muchos pequeños datos que si los guardas poco a poco machacan la microSD y reducen si vida útil.
Si usas armbian u Open Media Vault no lo necesitas ya que incluyen este tipo de script de manera nativa, pero Raspbian no lo hace, al menos en 2019.
Para arreglar esto ha creado un script que monta en RAM la carpeta /var/log. Esto lo combina con una tarea automática que cada hora lo vuelca a la microSD sincronizando todo usando CRON. El script también hará esta copia de RAM a la microSD cuando apagamos la Raspberry Pi de forma normal.
OJO!!!
En caso de fallo de alimentación se perderán todos lo registros desde el último guardado.
El script log2RAM puede funcionar en cualquier GNU/Linux siempre que tenga el gestor de tareas del mismo tipo que Raspbian, o sea, systemd.
Instalar log2RAM
Desde una Terminal, lo descargamos con curl
, lo descomprimimos con tar
y nos cambiamos la carpeta principal creada y allí lo hacemos ejecutable y lo instalamos. Al final, salimos del directorio y lo borramos. Aclarado qué se hace, os pongo los comandos:
curl -Lo log2ram.tar.gz https://github.com/azlux/log2ram/archive/master.tar.gz tar xf log2ram.tar.gz cd log2ram-master chmod +x install.sh && sudo ./install.sh cd .. rm -r log2ram-master
Ahora toca reiniciar para que tengan efecto los cambios.
Actualizar cuando haya versiones nuevas.
Para actualizarlo, primero hay que parar el servicio y después repetir los pasos anteriores de nuevo.
service log2ram stop
Personalizar la configuración.
La configuración se encuentra guardada en el fichero /etc/log2ram.conf
con explicaciones y estas variables:
- SIZE: indica el tamaño de la RAM destine a los archivos
log
temporales. Por defecto es de 40M pero recomiendan. subirlo a 128MB para la mayoría de casos. - USE_RSYNC: La sincronización del archivo de RAM y la microSD se hará internamente con el comando
rsync
en vez de concp
. - MAIL: para que nos envíe un email cada vez que se llene la RAM, puede venir bien para afinar con el tamaño que le ponemos en SIZE.
- ZL2R: Permite el uso de
zram
siempre que se configure con otra utilidad que podemos encontrar en https://github.com/StuartIanNaylor/zram-swap-config.
Cambiar el intervalo de sincronización.
Si volcar cada hora os parece mucho para vuestro caso, podéis probar a hacerlo una sola vez al día. Para ello, basta ejecutar este comando en una Terminal.
sudo mv /etc/cron.hourly/log2ram.hourly /etc/cron.daily/log2ram.daily
Comprobar si está funcionando.
Para comprobar que está funcionando podemos hacerlo viendo que aparece como una unidad de disco más al hacer una comprobación del espacio de disco disponible con el comando df -h
en una Terminal. Deberá verse alguna línea con la información siguiente:
log2ram 40M 532K 40M 2% /var/log
Desinstalar Log2RAM
Si después de probarlo un tiempo, ves que no te convence o te da problemas lo puedes desinstalarlo desde una Terminal con el siguiente comando:
chmod +x /usr/local/bin/uninstall-log2ram.sh && sudo /usr/local/bin/uninstall-log2ram.sh