Створення файлу підкачки (swap) в Linux
Операційні системи (як Windows, так і *nix) використовують розділ підкачки пам’яті (swap) - місце на диску, куди система копіює дані, коли обсяг оперативної пам’яті вичерпано і необхідно звільнити певну її кількість для інших процесів.
Загальні рекомендації по розміру розділу підкачки в Linux можна знайти у RedHat. Особисто я створюю такий розділ підкачки, який дорівнює x2 оперативної пам’яті (RAM), якщо її менше 8 Gb. Якщо оперативки більше 8 Gb, то swap дорівнює розміру оперативної пам’яті.
Деякі хостери при підготовці серверів ігнорують створення розділу підкачки. Пояснення як правило двох типів: 1) обсягу оперативної пам’яті більше 64 Gb цілком достатньо для роботи без swap, 2) використання swap шкодить роботі ssd. І перше, і друге - доволі дискусійні питання. Якщо не вдаватись до релігійних війн, а лише до власного досвіду експлуатації серверів для Magento-стеку, то мій висновок такий - файл підкачки потрібен в будь-якому разі.
Якщо ж ви вже отримали сервер без swap, то виправимо цю ситуацію створенням swap-файлу. Це буде спеціальний файл у файловій системі, який буде виконувати ту ж функцію, що і розділ підкачки.
Для прикладу створюємо файл розміром 8 Gb (за необхідності підставляйте своє значення).
fallocate -l 8G /swapfile
До цього файлу має бути доступ лише у root-а:
chmod 600 /swapfile
Налаштовуємо створений файл як файл підкачки:
mkswap /swapfile
І нарешті активуємо swap:
swapon /swapfile
Щоб файл підкачки був активний і після перезавантаження серверу, додаємо рядок до /etc/fstab:
/swapfile none swap sw 0 0
Користуйтесь ;)
Якщо з деякий причин вам файл підкачки більше не треба, то деактивуйте його, а потім вилучить сам файл і посилання на нього з fstab:
swapoff /swapfile
rm /swapfile