Create a swap file in Linux

Some VPS on hosting providers like Amazon Web Services do not have swap by default. Or if your server was configured with small swap and now you want to increase it. Below are instructions on how to increase swap area.

Turn off swap first

Be sure that you have enough free RAM to accommodate the contents of your current swap before you do this. If your VPS doesn’t have swap, then it’s safe to run.
#swapoff -a

Next, you will need to create a swapfile. The following dd command example creates a swap file with the name “myswapfile” under /root directory with a size of 1GB
# dd if=/dev/zero of=/root/myswapfile bs=1M count=1024
1024+0 records in
1024+0 records out

#ls -l /root/myswapfile
-rw-r--r-- 1 root root 1073741824 Aug 14 23:47 /root/myswapfile

Change the permission of the swap file so that only root can access it.
# chmod 600 /root/myswapfile

Make this file as a swap file using mkswap command.
# mkswap /root/myswapfile
Setting up swapspace version 1, size = 1073737 kB

Enable the newly created swapfile.
# swapon /root/myswapfile

You now have the new swapfile as your system swap. But after reboot, you’ll revert back to your original swap.

Add to /etc/fstab

To make this swap file available as a swap area even after the reboot, add the following line to the /etc/fstab file. Remove/Comment the original swap entry.
# cat /etc/fstab
/root/myswapfile none swap sw 0 0

Verify whether the newly created swap area is available for your use.
# swapon -s
Filename Type Size Used Priority
/dev/sda2 partition 4192956 0 -1
/root/myswapfile file 1048568 0 -2

# free -k
total used free shared buffers cached
Mem: 3082356 3022364 59992 0 52056 2646472
-/+ buffers/cache: 323836 2758520
Swap: 5241524 0 5241524

Note: In the output of swapon -s command, the Type column will say “file” if the swap space is created from a swap file.

If you don’t want to reboot to verify whether the system takes all the swap space mentioned in the /etc/fstab, you can do the following, which will disable and enable all the swap partition mentioned in the /etc/fstab
# swapoff -a
# swapon -a

– masterkenneth

Leave a Reply

Your email address will not be published. Required fields are marked *