Solution 1 :
La commande swapoff doit vider toute la mémoire échangée du fichier d'échange (/dev/mapper/rootvg-swap) vers la mémoire principale (ou peut-être ailleurs) avant de pouvoir désactiver le fichier d'échange. Cela peut prendre du temps et vous ne disposez peut-être pas de suffisamment de mémoire libre.
Vous pouvez augmenter la quantité d'espace d'échange libre dont vous disposez en ajoutant plus de fichiers d'échange
- créez un fichier d'échange/LV en fonction de ce dont vous disposez
- utilisez mkswap pour le configurer
- utilisez swapon pour l'activer
La page de manuel swapon contient plus d'informations sur plusieurs fichiers d'échange qui peuvent être utiles pour examiner en particulier les priorités.
Le moyen le plus sûr de résoudre votre problème est probablement de redémarrer en mode mono-utilisateur et d'effectuer les opérations que vous avez décrites lorsque le système n'est pas soumis à une pression de mémoire.
La meilleure solution consiste à dimensionner votre système en fonction de sa charge de travail et à ajouter plus de mémoire.
Solution 2 :
J'ai récemment rencontré ce problème sur une machine virtuelle Centos 7. J'ai arrêté et redémarré swapoff
plusieurs fois parce que j'étais impatient et que je pensais "il ne se passait rien".
Au dernier effort, j'ai essayé d'exécuter swapon --show
sur un terminal séparé à quelques minutes d'intervalle et j'ai vu que la quantité d'échange utilisée diminuait, bien qu'à un rythme d'escargot - c'est-à-dire 1,5 Mo/s, il a donc fallu environ une heure et quart pour terminer car environ 6,5 Go étaient en échange - bien qu'il y ait beaucoup de mémoire principale disponible. Finalement, il s'est terminé avec succès.