Вполне возможно, можем столкнуться с нехваткой оперативной памяти для выполнения какого то процесса на нашем сервере. Если такое случается постоянно — возможно следует подумать о расширении сервера — в плане RAM.
Но, предположим, что нам, только иногда, нужно чуть больше оперативной памяти, например для сборки jenkins, раз в день. И, при этом, вы видим ошибку вида
Cannot allocate memory
Которая не дает окончить желаемое действие.
В этом случае, на помощь приходит файл подкачки, swap file, который становится, своего рода продолжением оперативной памяти. При этом он хранится и потребляет память жесткого диска. А он, как известно, заметно дешевле RAM.
Итак, прежде всего, нужно проверить, имеем ли мы свободное место на HDD
$ sudo su
# df -h
В нашем случае, свободно 55 гигабайт из 59-ти.
Так же, давайте, проверим не создавали ли файла подкачки ранее
# swapon -s
Если вывод пустой — значит не создавали
Создадим файл подкачки на 1 Гигабайт (если необходимо больше — выставляем большее значение вместо выделенной цифры 1024 мб)
# dd if=/dev/zero of=/swapfile count=1024 bs=1MiB
Проверяем результат
# ls -lh /swapfile
Изменим режим доступа для файла — мера безопасности
# chmod 600 /swapfile
Теперь, активируем его
# mkswap /swapfile
# swapon /swapfile
Проверяем, что система видит его
# swapon -s
Однако, после перезагрузки он исчезнет, если не добавить его в загрузку
# nano /etc/fstab
И, в конец файла добавляем следующий код
/swapfile swap swap sw 0 0
Сохраняем файл (CTRL+O) и закрываем (CTRL+X)
Готово!