About Linux Swapping
Linux RAM is composed of chunks of memory called pages. To free up pages of RAM, a “linux swap” can occur and a page of memory is copied from the RAM to preconfigured space on the hard disk. Linux swaps allow a system to harness more memory than was originally physically available.
However, swapping does have disadvantages. Because hard disks have a much slower memory than RAM, server performance may slow down considerably. Additionally, swap thrashing can begin to take place if the system gets swamped from too many files being swapped in and out.
Note
Although swap is generally recommended for systems utilizing traditional spinning hard drives, using swap with SSDs can cause issues with hardware degradation over time. Due to this consideration, we do not recommend enabling swap on DigitalOcean or any other provider that utilizes SSD storage. Doing so can impact the reliability of the underlying hardware for you and your neighbors.
If you need to improve the performance of your server, we recommend upgrading your Droplet. This will lead to better results in general and will decrease the likelihood of contributing to hardware issues that can affect your service.
Check for Swap Space
Before we proceed to set up a swap file, we need to check if any swap files have been enabled by looking at the summary of swap usage.
If nothing is returned, the summary is empty and no swap file exists.
Check the File System
After we know that we do not have a swap file enabled, we can check how much space we have on the server with the df command. The swap file will take 512MB— since we are only using up about 7% of the /dev/hda, we can proceed.
Create and Enable the Swap File
Now it’s time to create the swap file itself using the dd command :
"of=/swapfile" designates the file’s name. In this case the name is swapfile.
Subsequently we are going to prepare the swap file by creating a linux swap area:
The results display:
Finish up by activating the swap file:
You will then be able to see the new swap file when you view the swap summary.
This file will last on the server until the machine reboots. You can ensure that the swap is permanent by adding it to the fstab file.
Open up the file:
Paste in the following line:
To prevent the file from being world-readable, you should set up the correct permissions on the swap file:
Linux RAM is composed of chunks of memory called pages. To free up pages of RAM, a “linux swap” can occur and a page of memory is copied from the RAM to preconfigured space on the hard disk. Linux swaps allow a system to harness more memory than was originally physically available.
However, swapping does have disadvantages. Because hard disks have a much slower memory than RAM, server performance may slow down considerably. Additionally, swap thrashing can begin to take place if the system gets swamped from too many files being swapped in and out.
Note
Although swap is generally recommended for systems utilizing traditional spinning hard drives, using swap with SSDs can cause issues with hardware degradation over time. Due to this consideration, we do not recommend enabling swap on DigitalOcean or any other provider that utilizes SSD storage. Doing so can impact the reliability of the underlying hardware for you and your neighbors.
If you need to improve the performance of your server, we recommend upgrading your Droplet. This will lead to better results in general and will decrease the likelihood of contributing to hardware issues that can affect your service.
Check for Swap Space
Before we proceed to set up a swap file, we need to check if any swap files have been enabled by looking at the summary of swap usage.
Bash:
swapon -s
Check the File System
After we know that we do not have a swap file enabled, we can check how much space we have on the server with the df command. The swap file will take 512MB— since we are only using up about 7% of the /dev/hda, we can proceed.
Bash:
df
Filesystem 1K-blocks Used Available Use% Mounted on
/dev/hda 20642428 1347968 18245884 7% /
Now it’s time to create the swap file itself using the dd command :
Bash:
sudo dd if=/dev/zero of=/swapfile bs=1024 count=512k
Subsequently we are going to prepare the swap file by creating a linux swap area:
Bash:
sudo mkswap /swapfile
Bash:
Setting up swapspace version 1, size = 536866 kB
Bash:
sudo swapon /swapfile
Bash:
swapon -s
Filename Type Size Used Priority
/swapfile file 524280 0 -1
Open up the file:
Bash:
sudo nano /etc/fstab
Bash:
/swapfile swap swap defaults 0 0
Bash:
chown root:root /swapfile
chmod 0600 /swapfile
Last edited: