スワップパーティションのサイズを増やすのが最良の方法ですが, 別のディスクを追加しなくて済むという利点のある方法があります.
スワップを別のディスク上に追加することは, 単純に同じディスク上 にスワップを追加する場合よりも高速に動作するようになります. 例に挙げれば, あるディスク上のソースをコンパイルしているとして, スワップが別のディスク上に作られていれば, これらが同じディスク上 にある場合よりも断然速いです. SCSI ディスクの場合は特にそうだと言えます.
IDE ドライブは同時に同じチャネル上の複数のドライブには アクセスできません (FreeBSD は mode 4 をサポートしていないので, すべての IDE ディスク I/O は ``programmed'' です). IDE の場合であってもやはり, スワップを別のハードディスク上に 作成することをおすすめします. ドライブは実に安いものです, 心配するだけ無駄です.
よいサーバと非常に高速なネットワーク環境でないのであれば, スワップを NFS 上に置こうというのは本当にばかげた考えです.
これは 64MBの vn-swap を作る例です (ここでは /usr/swap0
としますが, もちろん好きな名前を使うことができます).
カーネルが次の行を含むコンフィグファイルから構成されているかを 確認します. GENERIC カーネルには, この行が含まれています.
pseudo-device vn 1 #Vnode driver (turns a file into a device)
cd /dev sh ./MAKEDEV vn0
/usr/swap0
)
dd if=/dev/zero of=/usr/swap0 bs=1024k count=64
/etc/rc.conf
でスワップファイルを有効化させます
swapfile="/usr/swap0" # Set to name of swapfile if aux swapfile desired.
スワップファイルをすぐに有効化させたいのなら以下のようにタイプします
vnconfig -ce /dev/vn0c /usr/swap0 swap