SWAPを強制的に使用しない

さくらVPSWordPressを動かして研究に使っていたのですが
なんかapacheの子プロセスがメモリをどんどん侵食し
2GB中800MB近く[[SWAP]]していました。

SWAPというのはメモリ不足などによりHDD上に一時的にデータを所持するところです。


なのでとりあえず、実験で使用しているのでSWAPで重くなったりされても困るので
SWAPを無効化しようと思いました。


普段ほとんど使用しないコマンドなので
備忘録で簡単にしか書きません


まずはfdiskでSWAPのdiskがどこか確認します
(fdiskコマンドはroot権限がないと実行できません。できても何も出力されませんのでご注意を)


# fdisk -l


Disk /dev/hda: 21.4 GB, 21474836480 bytes
255 heads, 63 sectors/track, 2610 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes


Device Boot Start End Blocks Id System
/dev/hda1 * 1 13 104391 83 Linux
/dev/hda2 14 2355 18812115 83 Linux
/dev/hda3 2356 2610 2048287+ 82 Linux swap / Solaris


これでSWAPは/dev/hda3に割り当てられていることがわかりました


一時的にSWAPを使用停止するのでコマンドで停止します


 # swapoff /dev/hda3


これでSWAPを停止できます。
複数のSWAPが存在し、すべて停止する場合は


 # swapoff -a


ですべて停止できます。普通SWAPは1つしかないのでこのコマンドだけで十分です。


例えばSWAP領域を作るのを忘れたけど、SWAP欲しいという時は
簡単に作れるので作りましょう


 # mkswap /dev/hda4


で/dev/hda4にSWAP領域を作成できます
これだけではSWAPは有効化していないので有効化させます。
この様にSWAPを作って複数SWAPを作った時に
一つだけSWAPを有効化したいという時は


 # swapon /dev/hda4 


とすれば/dev/hda4だけ有効化できます。
すべて一回で有効化したい場合は


 # swapon -a


ですべて有効化できます
サーバの再起動などが行われるとswaponで実行した設定が消えてしまうので
/etc/fstabに設定を追記します


/dev/hda4               swap                    swap    defaults 0 0

これを最後に追記


これでサーバ再起動などが行われても設定は変わりません
私は一時的に変更するだけなので関係ありませんが・・・w
詳解 Linuxカーネル 第3版

詳解 Linuxカーネル 第3版







まよチキ! (MF文庫J)

まよチキ! (MF文庫J)