Я использую скомпилированное ядро 3.18.9, и мне интересно, как лучше всего отключить свопинг в системе. Я также использую init, если это имеет значение.
Достаточно ли прокомментировать или удалить строку подкачки в /etc/fstab
чтобы своп не работал / монтировался при загрузке, или я должен перекомпилировать ядро без Support for paging of anonymous memory (swap)
быть уверенным на 100%, что он не включается?
Я запускаю зашифрованные разделы и хочу предотвратить случайную утечку на жесткий диск. Технические характеристики моей системы также достаточно хороши, чтобы я мог выжить в среде без подкачки.
cat /proc/swaps
.swapoff -a
./etc/fstab
.Раньше меняли только разделы подкачки в /etc/fstab
использовались автоматически, однако systemd может это немного изменить. Возможно, вам потребуется сделать:
systemctl mask dev-sdXX.swap
(измените sdXX) на ваш настоящий форматированный раздел подкачки, что вызывает вопрос, почему у вас есть раздел подкачки, если вы не хотите, чтобы он использовался ...
Если вы не используете systemd, то удалите записи подкачки из /etc/fstab
должно хватить (насколько я знаю).
Возможно, реальное решение - избавиться от разделов подкачки, чтобы они не использовались случайно. Чтобы удалить разделы подкачки, я бы использовал fdisk, чтобы изменить тип раздела с подкачки на другой, а затем переформатировать раздел или использовать: dd if=/dev/zero of=/dev/old-swap-partition
чтобы обнулить его и предотвратить его использование.
Смотрите также Настройте использование раздела подкачки с помощью systemd.
Если вы действительно уверены, что хотите отключить подкачку (примечание: это не рекомендуется, даже если вы почти уверены, что физической памяти более чем достаточно), выполните следующие действия:
swapoff -a
: это немедленно отключит своп/etc/fstab
reboot
система. Если своп пропал, хорошо. Если по какой-то причине он все еще здесь, вам пришлось удалить раздел подкачки. Повторите шаги 1 и 2, а затем используйте fdisk
или parted
чтобы удалить (теперь неиспользуемый) раздел подкачки. Будьте осторожны здесь: удаление неправильного раздела будет иметь катастрофические последствия!reboot
На Распбиан 10 (Бастер) чистый ответ был бы:
Чтобы отключить это до следующей перезагрузки, как указано в */etc/fstab*
:
sudo /sbin/dphys-swapfile swapoff
Чтобы отключить подкачку при загрузке:
sudo systemctl disable dphys-swapfile
(Оказывается, я нигде не мог найти эту информацию ...)
На моем Linux Mint коробка (версия 19.3 (Tricia), на базе Ubuntu 18.04 (Bionic Beaver)) без раздела подкачки или вообще без подкачки, systemctl сообщал, что swapfile.swap сбой при каждом запуске. Его можно было отключить командой:
sudo systemctl disable swapfile.swap
Swapfile.swap - это «особая» часть systemd, о которой вы можете прочитать в man, используя man systemd.special
команда.
Когда я смотрю / etc / fstab файл на Raspbian я вижу комментарий, говорящий
a swapfile is not a swap partition, no line here
use dphys-swapfile swap[on|off] for that
Но чтобы полностью отключить предварительно настроенный файл подкачки, это отлично работает:
swapoff -a
chmod -x /etc/init.d/dphys-swapfile
reboot
Мне это решение кажется немного быстрым и грязным, однако вы можете просто включить его снова:
chmod +x /etc/init.d/dphys-swapfile
reboot