Wiki CgX

Parce que j'ai un cerveau, mais pas trop.

Outils pour utilisateurs

Outils du site


it:linux-systeme:swap

Swap

Lister les particions/fichiers de swap actifs

swapon --show

Créer un ficher de swap

On créé le fichier

sudo fallocate -l 1G /swapfile

ou

sudo dd if=/dev/zero of=/swapfile bs=1024 count=1048576

On règle les permissions et on le formate

* Seul le root doit accéder au fichier :

sudo chmod 600 /swapfile

* On formate :

sudo mkswap /swapfile

On active et on pérénnise

* On active le swap :

sudo swapon /swapfile

* On pérénise dans /etc/fstab pour que ça reste au reboot :

/etc/fstab
/swapfile swap swap defaults 0 0

toggleswap.sh

Permet de vider le swap d'un système, si il n'est pas utilisé.

#!/bin/bash
 
free_data="$(free)"
mem_data="$(echo "$free_data" | grep 'Mem:')"
free_mem="$(echo "$mem_data" | awk '{print $4}')"
buffers="$(echo "$mem_data" | awk '{print $6}')"
cache="$(echo "$mem_data" | awk '{print $7}')"
total_free=$((free_mem + buffers + cache))
used_swap="$(echo "$free_data" | grep 'change:' | awk '{print $4}')"
 
echo -e "Free memory:\t$total_free kB ($((total_free / 1024)) MB)\nUsed swap:\t$used_swap kB ($((used_swap / 1024)) MB)"
if [[ $used_swap -eq 0 ]]; then
    echo "Congratulations! No swap is in use."
elif [[ $used_swap -lt $total_free ]]; then
    echo "Freeing swap..."
    sudo swapoff -a
    sudo swapon -a
else
    echo "Not enough free memory. Exiting."
    exit 1
fi
it/linux-systeme/swap.txt · Dernière modification : 03 Oct 2022 :: 07:21 de CgX