Не знаю почему, но разработчики Ubuntu решили что если используется больше 40% ОЗУ, то операционная система должна начать использовать SWAP (раздел подкачки). Лично я обладатель ноутбука с 3 Гб ОЗУ, а следовательно начинается использоваться SWAP уже при занятых 1230 Мб, при том что еще 60% оперативки свободно начинается сброс в SWAP, следовательно жесткий диск начинает чаще работать, что за собой ведет:
- Сокращение времени автономной работы, т.к. жесткий диск чаще выполняет операции чтение/запись
- Система начинает работать медленней, т.к. жесткий диск на порядок тормознутей чем оперативка.
Такое положение дел меня не устраивало, поэтому немного погуглив я нашел следующее решение:
От имени администратора открываем файл /etc/sysctl.conf
nano /etc/sysctl.conf
Находим параметр vm.swappiness. Он отвечает за то, при каком объеме свободной ОЗУ (в процентах) начинается использоваться SWAP. По умолчанию стоит 60.
Немного поразмыслив я выбрал вариант, что при остатке 256 Мб оперативки можно начать использовать SWAP. 256Мб от 3 Гб это 8.33%, округляя в большую сторону получаем 9% (что кстати оказалось очень близким к значению которое я чаще всего встречал — 10%). Изменяем значение vm.swappiness = 60 на vm.swappiness = 9. Сохраняемся и перезагружаемся.
Чтобы узнать вступили ли наши изменения в силу нужно выполнить команду:
sudo cat /proc/sys/vm/swappiness
Если вы увидите число, которое вы выставили то значит все ОК.
Дополнение 1: Обследуя Ubuntu 10.04 Server обнаружил, что параметр vm.swappiness в файле /etc/sysctl.conf отсутствует, однако вывод команды $ sudo cat /proc/sys/vm/swappiness показывает 60. В данном случае придется ввести данный параметр в /etc/sysctl.conf