Table des matières

Utilisation de ZRAM sous Debian avec zram-tools

Qu’est-ce que ZRAM ?

ZRAM est un module du noyau Linux qui permet de créer une zone de swap compressée directement en RAM, au lieu d’utiliser une partition ou un fichier de swap classique sur disque.

Ainsi, au lieu d’écrire les données excédentaires vers un disque (plus lent), le système les compresse en temps réel et les conserve en mémoire vive. Cela permet de réduire significativement les temps d’accès et d’augmenter virtuellement la quantité de mémoire disponible.

ZRAM n’ajoute pas de RAM physique, mais limite efficacement les effets négatifs d’une saturation mémoire, avec un faible impact CPU.

Fonctionnement

ZRAM fonctionne de manière très simple :

Algorithmes de compression disponibles

Différents algorithmes peuvent être utilisés :

Avantages principaux

Performances comparatives

ZRAM offre des performances très supérieures au swap traditionnel sur disque :

Autres avantages

Installation sous Debian

Installer le paquet nécessaire

sudo apt update  
sudo apt install zram-tools

Cela installe le service systemd zramswap.service, chargé de gérer automatiquement les périphériques ZRAM.

Configuration simple dans /etc/default/zramswap

Éditer le fichier de configuration principal :

# /etc/default/zramswap

ENABLED=true

# Allouer automatiquement 50 % de la RAM totale (ne pas utiliser avec SIZE=)
PERCENT=50

# Alternative : fixer directement une taille en Mo (ne pas combiner avec PERCENT)
# SIZE=2048

ALGO=zstd

PRIORITY=100
⚠️ Attention : choisir soit PERCENT, soit SIZE, mais jamais les deux simultanément.

Exemple concret pour une machine disposant de 8 Go de RAM

ENABLED=true  
PERCENT=50  
ALGO=zstd  
PRIORITY=100

Appliquer la configuration

Pour prendre en compte les modifications :

sudo systemctl restart zramswap.service

Cela recrée proprement les périphériques ZRAM avec les nouveaux paramètres.

Activation au démarrage du système

Pour activer immédiatement et au démarrage suivant :

sudo systemctl enable --now zramswap.service

Vérifications utiles

Afficher les périphériques ZRAM

Lister les périphériques créés :

lsblk

Vérifier l’état du swap ZRAM

Voir le swap actuellement actif :

cat /proc/swaps

Résultat typique :

Filename        Type       Size      Used      Priority  
/dev/zram0      partition  1957468   0         100

Désactivation propre de ZRAM

Pour arrêter et désactiver ZRAM proprement :

sudo systemctl stop zramswap.service  
sudo systemctl disable zramswap.service