Limiter les I/O sur votre carte SD pour l'épargner !

Avec le temps, les cartes SD s’améliorent et leur durée de vie augmente.

Sur un Rapsberry Pi qui fonctionne avec une carte SD, c'est souvent l'élément qui vient à tomber en panne, que ce soit à cause d'une coupure de courant, ou encore à force d'écritures intensives sur celle-ci !

Plusieurs solutions existent pour limiter les accès en écriture sur une carte SD, notamment la mise en RAM des logs, ou encore la désactivation du SWAP.

Le swap consiste à transférer sur le disque dur (ici la carte SD) des pages mémoires inactives pour libérer de la place pour d’autres applications. Donc le swap sur le Raspberry Pi présente deux inconvénients majeurs : il réduit la durée de vie de la carte SD et peut ralentir dramatiquement le fonctionnement de votre système.


Désactivation du SWAP

Les commandes suivantes permettent tout d'abord de désactiver le SWAP, et ensuite de le désinstaller (en supprimant proprement le fichier de swap), sinon il reviendra lors des prochains redémarrage de votre Raspberry Pi.

sudo dphys-swapfile swapoff
sudo dphys-swapfile uninstall

Mettre les logs en RAM

Mettre les logs en RAM permet d'éviter des écritures trop fréquentes sur la carte SD (en permanence selon les applications qui tournent sur votre Raspberry PI).

Il existe toutefois un inconvénient, mais qui peut aussi être considéré comme un avantage : les logs ne seront accessibles qu’AVANT l’extinction du Raspberry PI. Après un reboot, toutes les données des logs seront vierges : normal, la RAM se vide à l’extinction, c’est une mémoire volatile.
C’est donc une bonne méthode pour effacer des traces entre les reboots.

Pour mettre les logs en RAM, rien de plus simple, il vous suffit d'éditer les points de montage avec la commande sudo vi /etc/fstab et d'ajouter les lignes suivantes :

tmpfs    /tmp        tmpfs      defaults,noatime,mode=1777,size=5m    0    0
tmpfs    /var/log    tmpfs      defaults,noatime,mode=1777,size=5m    0    0
tmpfs    /var/tmp    tmpfs      defaults,noatime,mode=1777,size=1m    0    0

N'hésitez pas à suggérer dans les commentaires d'autres méthodes qui permettent de ménager le Raspberry PI.