FreeBSD QandA 2441
Q. スワップ (swap) 領域のサイズはどのくらい確保すべきなのでしょうか。また、
後からスワップ領域サイズを増やしたくなった場合のお手軽な対処方法はありますか。
A. FreeBSD の場合は VM のアルゴリズム上、物理メモリ量 2倍以上のスワップ
領域を確保した方が性能が良くなるようです。tuning(7) を参照してください。
また、スワップ領域サイズが物理メモリサイズ以上なければ、カーネルパニック
時のカーネルダンプが出来なくなります。
なお、本来 FreeBSD をスワップ領域なしで運用することは可能なのですが、
FreeBSD の sysinstall(8) を使ってインストールすると、必ずスワップ領域を
指定しないといけません。これは sysinstall(8) の制限です。
スワップ領域はスワップファイルとして用意することも可能ですので、
- まずはスワップ領域を少なめ (32MB程度) でインストールしてみる。
- 使ってみてメモリがやはりキツければ、スワップファイルを追加する。
という手も使えます。
例として、10MB のスワップファイルを /usr/SWAPFILE として追加する方法を
紹介します(4.8-RELEASEで確認されています)。
1. スワップ領域として使用するファイルを作成
# dd if=/dev/zero of=/usr/SWAPFILE bs=1024k count=10
2. /etc/rc.conf に次の記述を追加
swapfile="/usr/SWAPFILE"
3. リブートし、スワップ領域に追加されたか確認
# pstat -s
Device 1K-blocks Used Avail Capacity Type
/dev/ad0s1b 130944 0 130944 0% Interleaved
→ /dev/rvn0b 10112 0 10112 0% Interleaved
Total 141056 0 141056 0%
この方法を、FAT ボリュームにある pagefile.sys (Windows のスワップファイル)
に応用することも可能です。
間違い・追加情報を見付けた場合は、
修正案の投稿のしかた を読んだ上で、
QandA@jp.FreeBSD.org まで
お知らせください。