この記事は公開から4年以上経過しています。
メインメモリを多めに搭載しているLinuxシステムで、メモリスワップの発生頻度を抑える方法についての備忘録です。
SSD搭載システムでスワップパーティションをSSDに置いているようなケースでは、スワップ発生頻度の減少によるSSDの書き換え寿命の延命が期待できます。
root権限で誤ったコマンドを実行するとシステムに重大な影響を与える可能性があります。コマンドを実行する際には、よく確認して慎重に行なってください。
対応
スワップ優先度を調整するためのパラメーター値を以下のコマンドで確認します。
sysctl vm.swappiness
設定範囲は0〜100で小さいほどスワップ優先順位が下がります。規定値は60です。
起動中のシステムに一時的に新しい設定を適用したい場合には以下のコマンドようにパラメーター名=新しい値
の形式で設定します(要root権限)。
sudo sysctl vm.swappiness=10
最適値はお使いのシステム構成によって異なると思いますが、まずは10
辺りから様子を見て徐々に調整してみてください。
最適な設定が見つかりシステムの再起動後にも設定を維持する場合には
/etc/sysctl.conf
または
/etc/sysctl.d/99-sysctl.conf
にテキストエディタで直接vm.swappiness=10
のような形で設定を記載します。
ちなみに、archlinuxのようなsystemd系ではsysctlのバージョンが207
と21x
以降の場合は/etc/sysctl.d/99-sysctl.conf
のほうでないと読み込まれませんので、注意が必要です。
参考ウェブページなど
-
ArchWiki スワップ
スワップに関する説明 -
ArchWiki Sysctl
Sysctlコマンドに関する説明
以上です。