Я создал файл подкачки размером 14 ГБ на сервере Amazon EC2, но созданный мной файл подкачки не используется сервером. Статус отображается так:
$ free -m
total used free shared buffers cached
Mem: 7687 7650 36 0 255 3834
-/+ buffers/cache: 3560 4126
Swap: 14335 0 14335
Вот шаги, которые я использовал для создания файла подкачки на сервере:
# dd if=/dev/zero of=/swapfile1 bs=1M count=14336
# mkswap /swapfile1
# swapon /swapfile1
Может кто подскажет, почему не используется файл подкачки?
Он был активирован, так как у вас есть 14 ГБ свободного пространства подкачки, но это просто не нужно, так как у вас есть 4 ГБ ОЗУ (*), а Linux не будет использовать гораздо более медленное пространство подкачки, если ОЗУ доступна.
(*) Если вы думаете, что ваша оперативная память полностью израсходована: это не так, она просто используется в качестве кеша и может быть использована немедленно при необходимости. Узнайте больше об этом Вот.
Он не используется, потому что в этом нет необходимости. На самом деле это довольно необычный вопрос, поскольку обычно администраторы стараются избегать использования свопа :) Если вы хотите, чтобы ваша система использовала более агрессивный своп, вы можете настроить некоторые регуляторы. Один из них является vm.swappiness
, попробуйте установить максимальное значение: sudo sysctl -w vm.swappiness=100
.
AFAIK, не для всех типов экземпляров включен обмен.
Взгляните на эту ссылку для получения дополнительной информации: http://tech.backtype.com/swap-space-on-ec2