Ma Publicité

Soutenez la Création

Aidez-moi à partager du contenu exclusif.

Soutenir

Comments

Nouveau Drop

Boutique Officielle

Soutenez le blog monblog-sa-abasse et découvrez nos vêtements & accessoires exclusifs en édition limitée.

Découvrir la collection
Paiement Sécurisé
Livraison Monde

Zram en pratique : accélérer une machine fatiguée

Zram en pratique : accélérer une machine fatiguée

Il y a un moment où même une machine « correcte » se met à tirer la langue. Pas parce que Linux serait lourd, non. Plutôt parce que… on a ouvert 27 onglets, un IDE, deux PDF, Spotify, et un vieux portable avec 4 Go de RAM qui regarde ça avec des yeux vides.

Et c’est là que zram devient intéressant. Pas magique. Mais franchement utile. Surtout quand on veut donner une seconde vie à un laptop de récup, une petite VM, un VPS modeste, ou un poste de travail qui swap trop souvent.

Je te propose un guide très terrain, très « sysadmin de la vraie vie ». Sur Le Blog Tech Pro de Samyn-Antoy ABASSE, je parle souvent growth, SEO, productivité… mais Linux, c’est le socle. Et zram, c’est typiquement le genre de tweak qui améliore tout le reste sans réinstaller un OS.


Zram : c’est quoi exactement

zram, c’est un module du kernel Linux qui crée un bloc de mémoire compressée en RAM. En gros, tu utilises de la RAM… pour stocker plus de RAM, compressée.

La RAM est rapide. La compression coûte du CPU. Mais sur beaucoup de machines, tu as plus de CPU disponible que de RAM disponible.

Donc, au lieu d’écrire sur le disque quand la mémoire se remplit (swap classique), tu écris d’abord dans une zone compressée en RAM. Résultat : moins d’I/O disque, moins de freeze, moins de « tout se bloque pendant 5 secondes ».

zram peut servir à deux choses principales :

  1. faire un swap compressé (le cas le plus courant)
  2. faire un filesystem compressé en RAM (plus rare pour un usage desktop)

Nous, on vise surtout le swap.

Pour ceux qui souhaitent approfondir leurs connaissances en Linux et optimiser leur utilisation du système d'exploitation, je recommande vivement ces 25 commandes Linux qui sauvent. De plus, si l'idée d'une carrière freelance en tant que consultant Linux te tente, cet article sur devenir consultant Linux en freelance pourrait t'apporter des informations précieuses. Enfin, pour ceux qui envisagent de monétiser ses compétences Linux, il existe également des ressources utiles disponibles sur mon blog.

Pourquoi ça aide vraiment sur une machine « fatiguée »

Si tu as un SSD rapide et beaucoup de RAM, tu verras peut être un gain léger, voire rien. Mais sur ces cas là, zram brille :

  • 4 Go ou 8 Go de RAM, usage navigateur + bureautique + outils dev
  • HDD (pas SSD) : le swap disque est douloureux
  • petits serveurs : un service qui spike en RAM peut éviter l’OOM
  • VM avec RAM limitée

Je te donne un exemple simple : sur un vieux ThinkPad avec 4 Go, swap disque actif. Sans zram, tu sens les coups de frein. Avec zram, la machine reste « réactive » plus longtemps. Elle n’a pas plus de RAM réelle, mais elle gère mieux la pression mémoire.


Avant de toucher quoi que ce soit : vérifier ta situation actuelle

Voir la RAM et le swap

bash free -h

Tu regardes surtout :

  • Mem : total et disponible
  • Swap : total et utilisé

Voir les swaps actifs

bash swapon --show

Voir la « tendance » du kernel à swapper

bash cat /proc/sys/vm/swappiness

  • 60 est souvent la valeur par défaut.
  • Sur desktop, on met parfois 10 ou 20.
  • Avec zram, on peut rester modéré. On en reparle plus bas.

Image : zram en un schéma rapide

Source : Wikimedia Commons. Le schéma est général, mais aide à visualiser la place du swap.


Méthode simple : activer zram avec systemd (Debian, Ubuntu, Fedora, Arch…)

Il y a plusieurs façons. Je vais te montrer la voie la plus simple et propre, selon ta distro.

Option A : Ubuntu (et dérivés) avec zram-tools

Sur Ubuntu, le paquet le plus simple est souvent zram-tools.

bash sudo apt update sudo apt install zram-tools

Ensuite, le fichier de config est généralement :

bash sudo nano /etc/default/zramswap

Tu peux y trouver des options comme :

  • PERCENT : pourcentage de RAM à utiliser en zram
  • ALGO : algo de compression (ex : lz4, zstd)

Exemple de réglage raisonnable sur une machine 4 Go ou 8 Go :

ini PERCENT=50 ALGO=zstd

Puis :

bash sudo systemctl restart zramswap

Vérifie :

bash swapon --show zramctl

Option B : Fedora

Sur Fedora, zram est souvent déjà activé par défaut via systemd-zram-generator (selon version). Vérifie simplement :

bash swapon --show zramctl

Si ce n’est pas actif, tu peux installer :

bash sudo dnf install zram-generator

Et créer une config :

bash sudo nano /etc/systemd/zram-generator.conf

Exemple :

ini [zram0] zram-size = ram / 2 compression-algorithm = zstd swap-priority = 100

Puis :

bash sudo systemctl daemon-reload sudo systemctl start systemd-zram-setup@zram0.service

Option C : Arch Linux (et Manjaro)

Arch a plusieurs options. La plus simple et moderne : systemd-zram-generator.

bash sudo pacman -S zram-generator

Puis le même fichier :

bash sudo nano /etc/systemd/zram-generator.conf

Et reboot, ou lancement manuel.


Réglages : taille, algorithme, priorité… les choix qui comptent

Bon. Là on rentre dans la partie où tu peux te perdre à optimiser pour 0,5 pourcent. On va rester pragmatique.

Taille de zram : combien mettre

Règles empiriques (pas universelles, mais efficaces) :

  • RAM 2 Go à 4 Go : zram = 50 pourcent à 100 pourcent de la RAM
  • RAM 8 Go : zram = 25 pourcent à 50 pourcent
  • RAM 16 Go et plus : zram utile, mais moins nécessaire. 25 pourcent suffit souvent.

Pourquoi pas 200 pourcent ? Parce que la compression dépend des données. Et aussi parce que tu ne veux pas te retrouver à compresser comme un malade et saturer CPU pour rien.

Algorithme de compression : lz4 ou zstd

  • lz4 : très rapide, compression moins forte
  • zstd : compression plus forte, un peu plus de CPU

Sur une machine moderne, zstd est souvent le meilleur compromis. Sur un CPU vraiment faible, lz4 peut être plus confortable.

Priorité du swap : pour préférer zram au disque

Linux peut avoir plusieurs swaps. Si tu gardes un swap disque, tu veux en général :

  • zram en priorité haute
  • swap disque en priorité basse

Tu peux voir les priorités via :

bash swapon --show --output=NAME,TYPE,SIZE,USED,PRIO

Dans les configs systemd zram generator, swap-priority = 100 est un bon signal. Le swap disque restera plus bas.


Image : vérifier zram en live

Ce n’est pas une capture zram à proprement parler, mais un visuel systemd. Si tu veux, sur monblog-sa-abasse.blogspot.com je peux publier des captures réelles selon ta distro, il suffit de me le demander via le blog.


Et si j’ai déjà un swap sur disque, je le supprime ?

Ça dépend. Voilà ma façon de faire sur des machines « fatiguées » :

  • Si tu as un HDD : garder un petit swap disque en secours peut être utile, mais il faut que zram soit prioritaire.
  • Si tu as un SSD : pareil, un swap disque peut servir de « deuxième étage ».
  • Si tu n’as pas de swap disque : zram seul marche très bien sur desktop. En serveur, je préfère souvent avoir un filet de sécurité.

Le piège : si tu n’as que zram et que tu atteins la limite, le kernel peut tuer des processus (OOM). Donc si ton usage est imprévisible, garde un swap disque minimal.

Pour désactiver temporairement le swap disque :

bash sudo swapoff -a

Et réactiver :

bash sudo swapon -a

Attention : si ta RAM est déjà pleine, swapoff peut échouer ou faire souffrir le système. Fais le calmement.


Ajuster swappiness : petit réglage, gros impact parfois

swappiness indique à quel point Linux préfère swapper plutôt que garder en RAM.

Avec zram, une valeur entre 20 et 60 est souvent correcte. Sur desktop, je mets souvent 20 ou 30.

Test temporaire :

bash sudo sysctl vm.swappiness=30

Permanent :

bash echo "vm.swappiness=30" | sudo tee /etc/sysctl.d/99-swappiness.conf sudo sysctl --system

Ne tombe pas dans le piège du « 1 absolument ». Sur certaines charges, trop bas peut créer d’autres effets. Le but, c’est la fluidité, pas une valeur qui fait bien.

Pour améliorer davantage la sécurité de votre système pendant que vous effectuez ces modifications, vous pourriez envisager d'harden votre SSH en suivant quelques étapes simples mais efficaces.

Tester : comment savoir si zram fait vraiment le job

Surveiller l’utilisation de zram

bash zramctl

Tu verras :

  • taille du device
  • données stockées
  • ratio de compression (ça c’est le plaisir)

Surveiller la pression mémoire

Installe htop si besoin :

bash sudo apt install htop

Et regarde :

  • mémoire utilisée
  • swap utilisée
  • load CPU si compression intense

Vérifier que le swap disque n’est presque pas touché

bash swapon --show

Si tu vois zram qui prend du swap et le disque qui reste bas, c’est plutôt gagné.


Problèmes courants (et fixes rapides)

« Mon CPU monte, j’ai l’impression que ça rame »

  • passe de zstd à lz4
  • réduis la taille zram
  • vérifie que tu n’as pas une appli qui explose la RAM (un navigateur peut le faire très vite)

« Je ne vois pas zram dans swapon »

  • module non chargé ou service non actif
  • teste :

bash lsmod | grep zram

Si rien :

bash sudo modprobe zram

Mais idéalement, laisse ton outil distro gérer ça.

« J’ai zram mais le système swap quand même sur disque »

  • augmente la priorité zram
  • baisse la priorité du swap disque
  • vérifie la config swap-priority

Petite checklist : ma config « passe-partout » pour laptop 4 Go à 8 Go

  • zram-size : RAM / 2
  • algo : zstd (ou lz4 si CPU faible)
  • swappiness : 30
  • swap disque : présent mais priorité plus basse (optionnel)

Ce n’est pas parfait pour tout le monde. Mais c’est étonnamment stable.


Conclusion : zram, c’est le genre d’amélioration qu’on garde

Ce que j’aime avec zram, c’est que ce n’est pas un tweak « instagram ». C’est discret. Ça ne se voit pas, mais tu le sens. Moins de freeze, moins de swap disque, une machine plus respirable.

Si tu veux, tu peux passer sur Le Blog Tech Pro de Samyn-Antoy ABASSE ( https://monblog-sa-abasse.blogspot.com ) et me dire :

  • ta distro
  • ta quantité de RAM
  • HDD ou SSD
  • ton usage (dev, bureautique, serveur, VM)

Et je te propose une config zram propre, sans te noyer dans 40 paramètres. Juste ce qu’il faut.

Questions fréquemment posées

Qu'est-ce que zram et comment fonctionne-t-il sous Linux ?

Zram est un module du noyau Linux qui crée un bloc de mémoire compressée en RAM. Il permet d'utiliser une partie de la RAM pour stocker plus de données compressées, réduisant ainsi l'utilisation du swap sur disque. Cela diminue les accès disque, les freezes et améliore la réactivité, surtout sur des machines avec peu de RAM.

Pourquoi utiliser zram sur un vieux portable ou une machine avec peu de RAM ?

Sur un ordinateur avec 4 Go ou 8 Go de RAM, notamment un vieux portable, le swap disque peut ralentir considérablement le système. Zram compresse les données swap en RAM, ce qui accélère les opérations mémoire, réduit les freezes et prolonge la réactivité sans ajouter de RAM physique.

Comment vérifier l'état actuel de la mémoire et du swap avant d'activer zram ?

Vous pouvez utiliser la commande 'free -h' pour voir la mémoire totale et disponible ainsi que le swap utilisé. La commande 'swapon --show' affiche les swaps actifs. Enfin, 'cat /proc/sys/vm/swappiness' indique la tendance du noyau à utiliser le swap, une valeur souvent réglée autour de 60 par défaut.

Quelle est la méthode recommandée pour activer zram sur Ubuntu ou ses dérivés ?

La méthode simple consiste à installer le paquet 'zram-tools' via 'sudo apt install zram-tools'. Ensuite, vous pouvez configurer '/etc/default/zramswap' en ajustant des options comme 'PERCENT' (pourcentage de RAM utilisée) et 'ALGO' (algorithme de compression). Par exemple : PERCENT=50 et ALGO=zstd. Enfin, redémarrez le service avec 'sudo systemctl restart zramswap'.

Quels sont les avantages et inconvénients d'utiliser zram ?

Les avantages incluent une meilleure gestion de la mémoire sur des machines limitées, moins d'I/O disque grâce au swap compressé en RAM, et une amélioration notable de la réactivité. En revanche, la compression utilise du CPU supplémentaire ; donc sur des machines déjà très sollicitées côté processeur, le bénéfice peut être moindre.

Dans quels cas précis zram est-il particulièrement utile ?

Zram est très utile sur des machines avec peu de RAM (4-8 Go), des disques durs mécaniques (HDD) où le swap disque est lent, des petits serveurs ou VM avec ressources limitées, ou encore pour donner une seconde vie à un laptop ancien qui swappe trop souvent. Il aide à éviter les blocages liés à la pression mémoire.

Enregistrer un commentaire

0 Commentaires

Comments

Nouveau Drop

Boutique Officielle

Soutenez le blog monblog-sa-abasse et découvrez nos vêtements & accessoires exclusifs en édition limitée.

Découvrir la collection
Paiement Sécurisé
Livraison Monde