Прежде всего, я знаю, как Linux использует память для кэширования диска (http://www.linuxatemyram.com/), но это, кажется, другое.
Прежде всего, я запускаю htop. Общее использование памяти% s всеми запущенными процессами составляет чуть более 50%, и тот же результат отображается, когда я складываю реальное использование памяти всеми запущенными процессами. Однако htop указывает использование моей памяти как 1381/1536 МБ.
Оглядевшись, я обнаружил, что мне следует проверить команду «free -m», чтобы узнать, не используется ли какая-то часть моей памяти для кэширования диска. Увы, free просто отображает это:
total used free shared buffers cached
Mem: 1536 1381 154 0 0 0
-/+ buffers/cache: 1381 154
Swap: 0 0 0
Я сейчас очень запутался. Куда девается вся эта дополнительная память? Linux "съел мою оперативную память"?
РЕДАКТИРОВАТЬ: Извините за некоторую путаницу, этот VPS работает на OpenVZ.
Ваш своп отключен. Если вы действительно настроили раздел подкачки, используйте
swapon -a
чтобы включить его. Если вы забыли создать раздел подкачки, вероятно, вам следует создать его и активировать.
dd if=/dev/zero of=/swap bs=1M count=1024
Где 1024 - сколько памяти подкачки вы хотите. Для настольной системы я рекомендую использовать вдвое больше оперативной памяти. Теперь вам нужно «отформатировать» файл подкачки.
mkswap /swap
Теперь вы должны включить его:
swapon /swap
Теперь запустите free -m, и вы должны увидеть бесплатную подкачку.
Если вы хотите, чтобы своп был включен во время загрузки, добавьте следующую строку в / etc / fstab
/swap none swap sw 0 0
Если у вас все еще есть свободный диск, настройте раздел подкачки и повторно запустите мою инструкцию из mkswap и измените / поменяйте местами с идентификатором раздела.