Logo Raspberry
0

Raspberry: Larga vida a las MicroSD

Es por todos conocidos que la vida útil de las tarjetas que tenemos conectadas a nuestra Raspberry no va a ser la más larga posible.

Esto, entre otras cosas, suele ser por la cantidad de lecturas / escrituras que tienen como vida útil la mayoría (por no decir todas) las tarjetas tanto SD como microSD.

Esto, lo podemos solucionar haciendo algunas modificaciones… pero claro, tienen su parte positiva y su parte negativa y las vamos a exponer a continuación.

Quitar los logs

Esto es lo más simple que podemos hacer para que estos ficheros no nos «destruyan» nuestras tarjetas y por ende, no tengamos que recurrir a comprar una tarjeta de manera urgente.

Hay que tener en cuenta que en este caso, si nuestro sistema da un error y hay que intentar ver donde o que ha fallado, estaremos totalmente a ciegas, pero claro… no tendremos problemas con la tarjeta de memoria…

Lo que hay que hacer es editar el fichero FSTAB y hay que hacerlo mediante SUDO.

sudo vim /etc/fstab

Dentro del propio fichero tendremos que agregar la siguiente línea:

tmpfs /var/log tmpfs defaults,noatime,nosuid,mode=0755,size=50m 0 0

Guardamos el fichero y cuando reiniciemos, tendremos el punto de montaje /var/logs cargado en memoria y por lo tanto, estará listo para funcionar y ser «volátil».

Poner los logs en un USB

Otra opción que se nos puede plantear, sería el poner los logs dentro de un USB, pero la mayor limitación que tendríamos aquí es el hecho de que en caso de tener muchos logs, nuestro sistema se puede resentir y provocar que en caso de desconectarse por error el USB (niños pequeños, perros con látigo por cola, etc) el sistema bloquee o no cargue lo suficientemente rápido la unidad como para escribir.

No obstante, si no tenemos esta situación, podemos hacerlo muy fácilmente pero siempre teniendo en cuenta que se ha de montar automáticamente nuestro USB, bien sea por configuración nuestra o mediante automontaje.

Una vez que ya tengamos montada nuestra unidad, lo que vamos a hacer es copiar todos nuestros logs dentro de nustra unidad, en este caso, nosotros la hemos llamado /media/usb_drive

mkdir /media/usb_drive/logs_sistema
cp -aRv /var/log/* /media/usb_drive/logs_sistema/

Haciendo esto,  quedará copiado el contenido en nuestro USB y por lo tanto ya podemos cambiar la información correspondiente del sistema.

cd /var
sudo ln -s /media/usb_drive/logs_sistema log

Con esto generamos un enlace simbólico que provoca que en el momento que vayamos a /var/log estemos accediendo a /media/usb_drive/logs_sistema.

Una recomendación a nivel personal, sería que utilizarais en estos casos USBs que sean pequeños como pueden ser los de este tipo.

Quitar la swap

La memoria SWAP es para que nos hagamos una idea, un fichero dentro del sistema en el que se almacenan procesos que la memoria no puede alojar, es decir, si tenemos a nuestra raspberry haciendo 1000 y eso es toda la memoria, al intentar cargar la 1001 usará la SWAP y por lo tanto generará escritura en disco.

Por ello mismo, podemos desactivar esta memoria y así evitar que el sistema haga lo que no queremos, gastar nuestras tarjetas.

El problema de quitar la SWAP es que en caso de estar limitados con la propia memoria que incluye nuestra Raspberry vamos a tener que dejarla para que no colapse.

Lo que vamos a tener que hacer es aplicar los siguientes comandos para desactivarla.

sudo dphys-swapfile swapoff
sudo dphys-swapfile uninstall
sudo update-rc.d dphys-swapfile remove

Por otro lado, además de desactivar la swap, lo que podemos hacer es desinstalar también el aplicativo que la gestiona y así ganar algo de espacio (irrisorio… pero espacio).

sudo apt-get uninstall dphys-swapfile

Poner la SWAP en un USB

Como se ha explicado antes, la SWAP es útil, está claro, pero hasta cierto punto, por lo que en ocasiones y teniendo en cuenta que puede que vaya mucho más lenta, podemos poner nuestra SWAP en un pincho USB para que no escriba ni lea dentro de nuestra microSD.

Para ello, al igual que en el punto de «Poner los logs en un USB» vamos a tener configurada y montada una unidad que en nuestro caso será /media/usb_drive.

Veamos los pasos en cuestión:

mkdir /media/usb_drive/swap
vim /etc/dphys-swapfile

Este fichero es el de configuración de la SWAP y esto es a causa de que no se usa una SWAP común a la hora de usar una raspberry.

Dentro del fichero, sobre la línea 12, hemos de modificar la línea

CONF_SWAPFILE=/var/swap

y poner nuestra ruta para la swap.

CONF_SWAPFILE=/media/usb_drive/swap

Cuando terminemos de modificar el fichero, solo tendremos que reiniciar dphys-swapfile.
sudo /etc/init.d/dphys-swapfile stop
sudo /etc/init.d/dphys-swapfile start

Pues ya tendríamos totalmente optimizada  nuestro sistema para evitar las escrituras en disco de manera indiscriminada.