Afficher/cacher Sommaire
2017-06-08-How_To_Configure_Virtual_Memory_Swap_File_on_a_VPS
[How To Configure Virtual Memory (Swap File) on a VPS | DigitalOcean](https://www.digitalocean.com/community/tutorials/how-to-configure-virtual-memory-swap-file-on-a-vps) |
How To Configure Virtual Memory Swap File on a VPS
La notion de mémoire sur les VPS est douteuse ?
free
total used free shared buffers cached
Mem: 4194304 4194304 0 1273636 0 2002384
-/+ buffers/cache: 2191920 2002384
Swap: 1048576 0 1048576
Création d’un fichier swap
sudo -s # passage en su
# Créer une image swap
cd /var
touch swap.img
chmod 600 swap.img
Taille
La taille du swap es de 1 à 2 fois la taille mémoire (2 fois de préférence)
Mémoire de 4G –> Swap de 8G (8192K)
dd if=/dev/zero of=/var/swap.img bs=8192k count=1000
Patienter quelques minutes
1000+0 enregistrements lus
1000+0 enregistrements écrits
8388608000 octets (8,4 GB) copiés, 74,6915 s, 112 MB/s
Préparation image swap
Initialisation du système de fichier swap
mkswap /var/swap.img
Setting up swapspace version 1, size = 8191996 KiB
no label, UUID=d34b0dda-89e4-46a9-8e38-6c7bf3eb05a0
Activer/Désactiver le swap
Activer : swapon
Désactiver : swapoff
VPS OpenVZ , swapon failed: Opération non permise
Create Fake Swap in OpenVZ VPS if you get swapon failed: Operation not permitted Error
Si vous obtenez un swapon failed: Opération non permise même si vous exécutez en tant que root, c’est parce que dans votre création de swap VPS n’est pas autorisée
Créer un faux swap
Suivez les étapes ci-dessous pour Créer un faux échange dans OpenVZ VPS
sudo nano /usr/local/bin/fakeswap.sh
#!/bin/bash
SWAP="${1:-512}"
NEW="$[SWAP*1024]"; TEMP="${NEW//?/ }"; OLD="${TEMP:1}0"
umount /proc/meminfo 2> /dev/null
sed "/^Swap\(Total\|Free\):/s,$OLD,$NEW," /proc/meminfo > /etc/fake_meminfo
mount --bind /etc/fake_meminfo /proc/meminfo
Droits en exécution
sudo chmod +x /usr/local/bin/fakeswap.sh
Exécution
sudo -s
fakeswap.sh
Vérification
free
total used free shared buffers cached
Mem: 4194304 2262380 1931924 1273636 0 149440
-/+ buffers/cache: 2112940 2081364
Swap: 1048576 669280 379296
Exécution automatique au boot
Pour une exécution automatique au boot
crontab -e
ajouter la ligne suivante
@reboot /usr/local/bin/fakeswap.sh