Как очистить SWAP в Linux

Рейтинг:  5 / 5

Звезда активнаЗвезда активнаЗвезда активнаЗвезда активнаЗвезда активна
 

linux_freebsdНадоело мне каждый раз, после того как кто-то использует много ОЗУ, перезагружаться чтоб очистить SWAP. Ведь если его не очистить то машинка мягко говоря начинает тормозить. А если это ещё и сервер с несколькими сайтами, а то и с несколькими десятками, то после перезагрузки приходится ещё и все их перепроверить на работоспособность, не побилась ли где mysql база. Хотя и с mysql есть лекарство, но о нём мы поговорим позже.

В этот раз меня сделала счастливым всего одна команда, введённая от суперпользователя.

  • swapoff/swapon

А точнее сначала вводим:

  • swapoff -a

Этим мы отключаем использование swap. А через минуту - пару минут, после того как наш swap перенесётся снова в ОЗУ, вводим:

  • swapon -a

Этим мы снова подключаем использование swap. Полностью отключать и не включать swap я не рекомендую, хотя бывают разные конфигурации железа, возможно где-то это будет оправданно.

Командой swapoff -a, запущенной от имени суперпользователя, можно отключить использование всех разделов и файлов подкачки. После ввода команды содержимое свопа за несколько минут загружается обратно в оперативную память, а сам раздел подкачки отключается. Если честно, я не испытывал, что произойдёт, если при этом оперативной памяти окажется недостаточно. Ну и после загрузки содержимого свопа в оперативную память я всегда включал его обратно командой swapon -a. Однако приятно, что можно так легко и быстро вернуть отзывчивость системы одной командой безо всяких перезагрузок.