Настраивал очередной новый VDS сервер. Обнаружил, что после установки из стандартного шаблона хостинга, сервер без swap файла. Мониторинг zabbix после установки ругается на отсутствие свопа. Не стал отключать триггер, решил быстро добавить своп, в принципе, он может пригодиться.
На углубленном курсе "Архитектура современных компьютерных сетей" вы с нуля научитесь работать с Wireshark и «под микроскопом» изучите работу сетевых протоколов. На протяжении курса надо будет выполнить более пятидесяти лабораторных работ в Wireshark.
Инструкция подойдет практически к любому линуксу, не зависимо от версии. Для начала проверим, есть ли у нас swap раздел или нет:
# swapon -as
Если в выводе пусто, значит раздела нет.
Первым делом создаем файл для наших целей:
# dd if=/dev/zero of=/swap bs=1024 count=1000000
Размер файла 1Гб, равен объему памяти на сервере. Можно сделать и в 2 раза больше, но не вижу в этом необходимости. Вы выбирайте размер на свое усмотрение.
Форматируем файл в формат свопа:
# mkswap /swap
Подключаем файл к системе:
# chmod 0600 /swap # swapon /swap
Проверяем результат работы:
Все в порядке, раздел добавлен. Теперь нам нужно сделать так, чтобы swap раздел монтировался при загрузке. Для этого добавляем в fstab строку:
/swap swap swap defaults 0 0
Не забываем в конце файла сделать переход на новую строку. Сохраняем fstab, перезагружаемся и проверяем.
Если вдруг решите, что своп вам больше не нужен, отключить его так же просто, как и подключить:
# swapoff -a
Дальше можно удалять сам файл и вычищать его из fstab.
Научиться настраивать MikroTik с нуля или систематизировать уже имеющиеся знания можно на углубленном онлайн-курcе по администрированию MikroTik. Автор курcа – сертифицированный тренер MikroTik Дмитрий Скоромнов. Более 40 лабораторных работ по которым дается обратная связь. В три раза больше информации, чем в MTCNA.
В заголовке создание раздела, а по факту создается файл.
а не проще при установке не создать сразу раздел swap?
т9
#!/bin/bash
dd if=/dev/zero of=/swap bs=1024 count=512000
mkswap /swap
chmod 0600 /swap
swapon /swap
if [ "$(grep '/swap' /etc/fstab)" ]; then
echo "Error: file /etc/fstab already has 'Swap' record"
else
echo "Add Swap record to /etc/fstab"
echo -e '\n/swap swap swap defaults 0 0' >> /etc/fstab
fi
swapon --show
Спасибо, вся статья в одном скрипте. Я руками все это делаю до сих пор :)
Доделал немного:
А можно ли изменить увеличить раздел swap, при этом уменьшив другой раздел без потери данных на VPS по ssh?
Теоретически можно, но я бы не советовал так делать. Когда наживую работаешь с таблицами разделов, всегда есть шанс, что что-то пойдет не так и данные потеряются. Я бы не рисковал.
Несколько раз уже создавал swap по этой инструкции, но у меня вдруг возник вопрос: а на каком разделе будет создан swap-файл? и можно ли выбирать этот раздел при создании файла?
Конечно можно. В данном примере swap создается в корневом разделе /, потому что адрес указан как /swap. Но его создать можно где угодно, например /mnt/sdb/swap, если sdb это отдельный диск, смонтированный в /mnt/sdb.
Теперь все ясно. Спасибо большое!
Разобрался и подключил своп в виде файла.
Суть: команда swapon работает только с ключем -sa (-as выдает ошибку). (может быть это только у меня так, но на CentOS 7 проблем не замечал).
Цитирую:
"Для начала проверим, есть ли у нас swap раздел или нет:
# swapon -as
Если в выводе пусто, значит раздела нет."
Ключ -a, как я понимаю, подключает все своп разделы, которые перечислены в /etc/fstab и по какой-то причине еще не активны?
Для просмотра также можно использовать cat /proc/swaps (взято из http://manpages.ubuntu.com/manpages/cosmic/man8/swapon.8.html)
Судя по переводчику, получаю "взаимоисключающие аргументы".
Отдельно отрабатывают команды swapon -a / swapon-s
Установил Debian 10. Пытаюсь проверить состояние своп-файла командой swapon -as, на выходе получаю:
swapon: mutually exclusive arguments: --all --options --summary --show
Далее делаю по инструкции и при попытке примонтировать своп-файл получаю ошибку:
swapon: /swap: read swap header failed
Все команды выполню от рута.
swapon --show
Добрый вечер! Подскажите, пожалуйста, в чем проблема. Установила Debian 10 по Вашей инструкции на raid, хочу создать swap. При вводе команд swapon, mkswap, говорит команда не найдена. В чем проблема?
Сама разобралась, спасибо.
В чем была проблема? Мне всегда казалось, что эти команды входят в базу дистрибутива. Всегда везде они были.
скорее всего в su -
также можно использовать команду
# fallocate -l 2G /swapfile
или нельзя?
Не знаю наверняка, не проверял. По описанию fallocate вроде можно.
Нет ли ошибки в этой команде:
/swap swap swap defaults 0 0 ?
Это не команда, это строка для файла fstab. Ошибки тут нет.
Первая строка - файл для монтирования.
Вторая - точка монтирования, для свапа она так и указывается swap
Третья - тип файловой системы, в данном случае swap
Дальше дефолтные настройки.
Спасибо большое