6.14 Adding Swap Space

No matter how well you plan, sometimes a system does not run as you expect. If you find you need more swap space, it is simple enough to add. You have three ways to increase swap space: adding a new hard drive, enabling swap over NFS, and creating a swap file on an existing partition.

6.14.1 Swap on a New Hard Drive

The best way to add swap, of course, is to use this as an excuse to add another hard drive. You can always use another hard drive, after all. If you can do this, go reread the discussion about swap space in Section 6.2 for some suggestions on how to best arrange your swap.

6.14.2 Swapping over NFS

Swapping over NFS is only recommended if you do not have a local hard disk to swap to. Even though DragonFly has an excellent NFS implementation, NFS swapping will be limited by the available network bandwidth and puts an additional burden on the NFS server.

6.14.3 Swapfiles

You can create a file of a specified size to use as a swap file. In our example here we will use a 64MB file called /usr/swap0. You can use any name you want, of course.

Example 6-1. Creating a Swapfile

  1. Be certain that your kernel configuration includes the vnode driver. It is not in recent versions of GENERIC.

    pseudo-device   vn 1   #Vnode driver (turns a file into a device)
  2. Create a vn-device:

    # cd /dev
    # sh MAKEDEV vn0
  3. Create a swapfile (/usr/swap0):

    # dd if=/dev/zero of=/usr/swap0 bs=1024k count=64
  4. Set proper permissions on (/usr/swap0):

    # chmod 0600 /usr/swap0
  5. Enable the swap file in /etc/rc.conf:

    swapfile="/usr/swap0"   # Set to name of swapfile if aux swapfile desired.
  6. Reboot the machine or to enable the swap file immediately, type:

    # vnconfig -e /dev/vn0b /usr/swap0 swap

Contact the Documentation mailing list for comments, suggestions and questions about this document.