Моя Ubuntu 12.04 x64 на Dell XPS 15 с 8 ГБ ОЗУ была действительно вялой.
После некоторых поисков я наткнулся на сообщение о перестановке. Я заметил, что подкачка в моей системе была указана как 0, что означает, что подкачка должна начинаться только тогда, когда вся память используется, и в то же время она действует почти так же, как при перестановке 60.
Я установил swappiness на 10 с помощью:
echo 10 > /proc/sys/vm/swappiness
и обновил /etc/sysctl.conf
с помощью:
vm.swappiness = 10
После перезагрузки я заметил, что swapiness сообщается как 0 снова с той же медленной производительностью , Я запустил эхо 10 > /proc/sys/vm/swappiness
, и производительность заметно улучшилась.
Я снова перезагрузился и проверил перестановку, снова было сообщено, что 0. Я выполнил sudo sysctl -p
и увидел, что значения из sysctl.conf
вступили в силу.
Кажется, что значение из /etc/sysctl.conf
игнорируется при загрузке.
У меня есть ноутбук с 32-битной Ubuntu 12.04, и я также применил ту же конфигурацию. На ноутбуке изменения вступают в силу, как и ожидалось, и остаются после перезагрузки.
1115 Кто-нибудь сталкивался с такой проблемой? Как я могу это исправить?
Я просто добавил следующее в мой /etc/rc.local
sysctl -w vm.swappiness=1 #Discourage swapping.
По сути, вы можете в любой момент запустить эту команду: sudo sysctl -w vm.swappiness=1
, чтобы изменить swappiness. Cat / proc / sys / vm / swappiness дает 1 после этого.
Попробуйте:
Запустите эмулятор терминала и запустите
cd /etc/sysctl.d/
echo "vm.swappiness = 10" | sudo tee 60-memory-management.conf
sudo chmod 644 60-memory-management.conf
Перезагрузитесь и проверьте, используются ли новые значения с:
cat /proc/sys/vm/swappiness`