Prolonger la durée de vie de la carte SD

Ce billet est une amélioration d'un précédent post: Prolonger la durée de vie de la carte SD (old). Les deux amènent une approche différente pour solutionner le même problème. A vous de choisir la solution qui vous convient le mieux.

J'ai remarqué qu'il n'était pas rare pour mon raspberry d'exploiter à 100% le swap alors que la ram était à peine exploitée à 30%…

Pour rappel, le swap, aussi appelé par son terme anglais swap space ou encore l'espace d'échange, est une zone d'un disque dur faisant partie de la mémoire virtuelle de votre ordinateur. Il est utilisé pour décharger la mémoire vive physique (RAM) de votre ordinateur lorsque celle-ci arrive à saturation.

Le problème ici est que la durée de vie de la carte SD (comme pour toute mémoire flash) dépende de son nombre de cycles d’écriture, et que l'utilisation du swap au lieu de la ram aura tendance à accélérer l'usure de la carte SD de notre raspberry.

On trouve donc de nombreux tutoriaux sur internet pour prolonger la durée de vie de nos carte SD en désactivant le swap. A mon sens ce n'est pas une bonne idée. Je vais donc essayer de limiter au plus tard l'utilisation du SWAP, quand la RAM est effectivement chargée au maximum… disons quand la RAM est pleine à 85%: * vm.swappiness=15 déclenche l'utilisation de la swap quand il ne reste plus que 15% de RAM. * vm.vfs_cache_pressure=50 permet de garder plus de liens vers les fichiers en mémoire, pour accélérer l’accès aux fichiers.

echo vm.swappiness=15 | sudo tee /etc/sysctl.d/99-swappiness.conf
echo vm.vfs_cache_pressure=50 | sudo tee -a /etc/sysctl.d/99-swappiness.conf
sudo sysctl -p /etc/sysctl.d/99-swappiness.conf

Pour activer ces modifications, plusieurs possibilités: rédémarrer la bête ou alors désactiver puis réactiver le swap:

sudo swapoff -av
sudo swapon -av