Je suis donc en train de suivre un tutoriel pour installer OTRS qui est Open Source Ticket Request System. Donc, pour l'installer, il nécessite: 4 Go d'espace de swap. Voici la commande que j'ai utilisée:
[root@ip-10-0-7-41 ~]# df -h
Filesystem Size Used Avail Use% Mounted on
/dev/xvda1 50G 14G 37G 27% /
devtmpfs 478M 0 478M 0% /dev
tmpfs 496M 0 496M 0% /dev/shm
tmpfs 496M 13M 484M 3% /run
tmpfs 496M 0 496M 0% /sys/fs/cgroup
tmpfs 100M 0 100M 0% /run/user/1000
[root@ip-10-0-7-41 ~]# fallocate -l 4G /myswap
[root@ip-10-0-7-41 ~]# ls -lh /myswap
-rw-r--r--. 1 root root 4.0G Jul 8 08:44 /myswap
[root@ip-10-0-7-41 ~]# chmod 600 /myswap
[root@ip-10-0-7-41 ~]# mkswap /myswap
Setting up swapspace version 1, size = 4194300 KiB
no label, UUID=3656082a-148d-4604-96fb-5b4604fa5b2e
[root@ip-10-0-7-41 ~]# swapon /myswap
swapon: /myswap: swapon failed: Invalid argument
Vous pouvez voir: Erreur d'argument non valide ici. J'ai essayé à plusieurs reprises en vain de l'activer. Quelqu'un s'il vous plaît dites-moi comment corriger cette erreur. (J'exécute ce CentOS 7 sur AWS Instance EC2)
[root@ip-10-0-7-41 ~]# df -T | awk '{print $1,$2,$NF}' | grep "^/dev"
/dev/xvda1 xfs /
Le problème avec fallocate(1)
est qu'il utilise le système de fichiers ioctls
pour rendre l'allocation rapide et efficace, l'inconvénient est qu'il n'alloue pas physiquement l'espace mais swapon(2)
syscall nécessite un vrai espace. Référence: https://bugzilla.redhat.com/show_bug.cgi?id=1129205
J'avais déjà fait face à ce problème plus tôt avec ma boîte. Donc, au lieu d'utiliser fallocate
, j'ai utilisé dd
comme le suggère le lien
Sudo dd if=/dev/zero of=/myswap count=4096 bs=1MiB
et aller de l'avant avec les commandes chmod
, mkswap
& swapon
. Bingo! Ça a marché.
Suivez ces étapes, cela fonctionne sur les gouttelettes de DigitalOcean. J'ai testé. Modifiez le montant 4096 selon vos besoins
yum install nano -y
Sudo dd if=/dev/zero of=/swapfile count=4096 bs=1MiB
Sudo chmod 600 /swapfile
Sudo mkswap /swapfile
Sudo swapon /swapfile
Sudo nano /etc/fstab
ajoutez cette ligne:
/swapfile swap swap sw 0 0
exécutez cette commande
Sudo sysctl vm.swappiness=10
Sudo nano /etc/sysctl.conf
ajouter cette ligne
vm.swappiness = 10
vm.vfs_cache_pressure = 50
Pour vérifier la taille du swap
swapon --summary
free -h