Blog

Purge de la swap sous Linux

Écrit le 08 01 2013 par Kévin MET _

Pour une raison X ou Y, vous avez besoin de vider la swap sur votre Linux, il suffit d'utiliser les commandes suivantes :


# swapoff -a && swapon -a

Et voilà, tout simplement, votre swap est vide. Mais attention, avant de faire cela il faut bien vérifier qu'il reste de la RAM disponible pour y vider la swap !

Tant qu'on est sur le sujet, si vous voulez gagnez un peu d'espace en RAM, vous pouvez avec cette commande vider le pagecache, dentries et inodes :


# sync && echo 3 > /proc/sys/vm/drop_caches

Et un dernier rajout, un petit script qui traine sur le net depuis un bon moment mais dont je me sers assez régulièrement pour savoir ce qui swap sur un linux :


#!/bin/bash 
## Get current swap usage for all running processes
## Erik Ljungstrom 27/05/2011
## Pipe the output to "sort -nk3" to get sorted output
SUM=0
OVERALL=0
for DIR in `find /proc/ -maxdepth 1 -type d -regex "^/proc/[0-9]+"`
do
	ID=`echo $DIR | cut -d / -f 3`
	PROGNAME=`ps -p $PID -o comm --no-headers`
	for SWAP in `grep Swap $DIR/smaps 2>/dev/null | awk '{ print $2 }'`
	do
		let SUM=$SUM+$SWAP
	done
	if (( $SUM > 0 )); then
		echo "PID=$PID swapped $SUM KB ($PROGNAME)"
	fi
	let OVERALL=$OVERALL+$SUM
	SUM=0
done
echo "Overall swap used: $OVERALL KB"
♥ Partage sur tes réseaux sociaux ♥
Kévin MET
Kévin MET

Auteur de ce blog et gérant de la société MNT-TECH, je publie sur ce blog lorsque le temps me le permet et lorsqu'un sujet qui me parait intéressant n'a pas encore été abordé en français. Toutes les informations techniques présentes sur cette page peuvent être réutilisées moyennant le fait de citer la source.