Economiser la RAM sur un Raspberry-Pi

Préambule
L'augmentation de la RAM sur un Raspberry-Pi à fait l'objet de nombreux fils de discussion sur le NET. Il s'avère que si cela est techniquement possible dans certaines conditions, le résultat ne serait absolument pas performant au final... peut être même plus lent que la carte SD.

Plutôt que d'essayer d'ajouter de la RAM Physique, une autre approche peut être d'essayer d'en consommer le moins possible. Cela reste même intéressant pour nos Raspberry Pi 2 qui disposent de 1 Go de mémoire,
Il est possible d'économiser la RAM avec, cerise sur le gâteau, une amélioration des performances.


Une alternative, économiser la mémoire
Voici donc une série de trucs et astuces pour économiser la mémoire sur votre Raspberry Pi.
En partant de principe que chaque octet compte, il est possible de récupérer de la RAM et de l'espace sur la carte SD, de quoi obtenir un système aussi léger que possible sans sacrifier les fonctionnalités.
Certains de ces points sont déjà adressés sur Raspbian Whezzy mais d'autres peuvent toujours être appliqués.

Notez qu'une bonne partie de ces optimisations sont déjà présente dans les Raspbian les plus récents... mais cela donne des idées.

xinetd
xinetd démarre des programmes qui offrent des services de type Internet. C'est un processus dormant qui surveille tous les ports ethernet listé dans son fichier de configuration. Lorsque qu'une requête entrante est détectée, xinetd démarre le serveur approprié pour répondre à la requête.

Je ne vois pas vraiment l'intérêt d'un tel service/deamon sur le Pi... allez hop, désinstallations!

sudo apt-get purge xinetd
sudo apt-get remove

NFS
Savez-vous ce qu'est NFS? Si ce n'est pas le cas, vous pouvez désinstaller ce service.
NFS (Network File System) est un protocole qui permet à un ordinateur d'accéder à des fichiers via un réseau. Ce système de fichiers en réseau permet de partager des données entre systèmes Unix/Linux. Il existe des version pour Mac et Windows.

sudo apt-get purge portmap

Cette commande aura pour effet de désinstaller un ou deux autres paquets mais aura surtout pour effet de désinstaller nfs-common (ce qui est une bonne chose).

sudo apt-get autoremove

Consoles virtuelles
Savez-vous ce qu'est une console virtuelle? Les utilisez vous?
Sur un système de type Linux, vous avez généralement une console graphique et 6 consoles textes. Il est possible de passer d'une console texte à l'autre en pressant la combinaison de touche Alt+F1, Alt+F2, etc (ou Alt+DROITE, Alt+GAUCHE).
Le retour à la console graphique se fait à l'aide de CTRL+ALT+F1. (voyez cet article pour plus d'info).

Avoir une ou deux consoles texte à disposition peut être bien pratique, par contre, votre Pi en démarre 6! Evitons le gaspillage des ressources et faisons un peu de ménage.

Il faut éditer le fichier système inittab à l'aide de la commande sudo nano /etc/inittab et naviguer presque jusqu'à la fin du fichier pour trouver une ligne qui ressemble à ceci:

4:23:respawn:/sbin/getty 115200 tty4

Et commenter ces lignes en placant le symbole # en tout début de ligne. Faites le pour les 3 lignes mentionnant  tty4, tty5 et tty6.

Il est également possible de se connecter sur le Pi à l'aide d'une console série (nécessitant un convertisseur USB/Série que l'on branche sur le GPIO). Si vous ne comptez pas utiliser cette fonctionnalité avec votre Pi alors vous pouvez également commenter la ligne contenant ttyAMA0 .

Sauvez le fichier puis tapez la commande suivante (ou rebootez votre Pi):

sudo kill -1 1

Cela tuera tous les processus getty dont nous n'avons plus besoin. Cela libérera un peu de mémoire RAM.... rien d'énorme mais chaque octet compte!

NTFS
Est-ce que vous allez seulement l'utiliser un jour? Peut être la seule fois où vous brancherez un disque USB ou un disque dur formaté en NTFS provenant d'un PC Windows.
Si vous ne comptez jamais le faire, vous pouvez libérer un peu de RAM et d'espace disque en retirant le support NTFS.

sudo apt-get purge fuse-utils
sudo apt-get purge libfuse2
sudo apt-get purge libntfs10

Cette opération déchargera le module fuse de la mémoire et libérera de la place sur la carte SD.

GDM
GDM est le gestionnaire d'affichage de Gnome. Ce module à été désactivé et les gens sont plutôt encouragés à taper startx pour démarrer en mode X Windows.

sudo apt-get autoremove gdm
sudo apt-get autoremove




Remerciements
Un grand merci à Gordon pour les informations publiées sur drogon.net.