How to Add Swap Space on Ubuntu 20.04

Ubuntu 20.04 is a popular Linux distribution known for its stability and performance. However, if you find that your system is running out of memory and becoming slow, adding swap space can greatly improve its performance. Swap space is a portion of the hard drive that is used as virtual memory when the system’s physical memory (RAM) is full. In this blog post, we will explore various methods to add swap space on Ubuntu 20.04 and improve your system’s performance.

Video Tutorial:

What’s Needed

Before proceeding with the methods, there are a few things you need to ensure:

1. Ubuntu 20.04: Make sure you have Ubuntu 20.04 installed on your system.

2. Root access: Most of the methods require root access or superuser privileges, so ensure that you have the necessary permissions.

3. Sufficient disk space: Check if you have enough free disk space on your Ubuntu system to accommodate the swap space size you want to add.

4. Understanding the implications: Adding swap space has certain implications, like increased disk usage and slower swap operations compared to RAM. Keep these in mind before proceeding.

Now that you have a basic understanding of what swap space is and what’s needed, let’s dive into the methods to add swap space on Ubuntu 20.04.

What Requires Your Focus?

While adding swap space on Ubuntu 20.04, there are a few key aspects that require your attention:

1. Swap space size: You need to decide how much swap space you want to add based on your system’s requirements. The general rule of thumb is to allocate an amount equal to or greater than your system’s RAM size. However, if you have ample RAM and rarely max it out, a smaller swap space size may be sufficient.

2. Disk partitioning: Some methods require creating a separate partition for swap space, while others use a swap file. If you choose to create a partition, you need to be careful to not overwrite or delete any existing partitions or data.

3. Configuration: Once you have added the swap space, you might need to update the system’s configuration files to utilize the new swap space effectively. This step varies depending on the method used, and we will provide instructions for each method.

Keep these aspects in mind as we explore the different methods to add swap space on Ubuntu 20.04.

Method 1. How to Create a Swap File

To add swap space by creating a swap file, follow these steps:

Step 1: Check available disk space

  • Open a terminal
  • Execute the following command:
    df -h
  • The output will display disk usage details. Make sure you have enough free disk space to accommodate the swap file.

Step 2: Create a swap file

  • Open a terminal
  • Execute the following command to create a swap file of 1GB (you can replace 1G with your desired size):
    sudo fallocate -l 1G /swapfile

Step 3: Set permissions for the swap file

  • Execute the following command:
    sudo chmod 600 /swapfile
  • This command ensures that only the root user has read and write permissions for the swap file.

Step 4: Format the swap file

  • Execute the following command to format the swap file:
    sudo mkswap /swapfile

Step 5: Activate the swap file

  • Enable the swap file by executing the following command:
    sudo swapon /swapfile
  • Verify that the swap file is active by executing the following command:
    sudo swapon --show

Step 6: Update fstab file

  • Open the fstab file in a text editor using the following command:
    sudo nano /etc/fstab
  • Add the following line at the end of the file to automatically mount the swap file on boot:
    /swapfile none swap sw 0 0
  • Save the file and exit the text editor.

Pros:

  1. Easy and straightforward process to add swap space using a swap file.
  2. Does not require modifying existing disk partitions.

Cons:

  1. Swap files may not be as efficient as dedicated swap partitions.
  2. Slower swap operations compared to RAM due to the involvement of the disk.

Method 2. How to Create a Dedicated Swap Partition

To add a dedicated swap partition on Ubuntu 20.04, follow these steps:

Step 1: Check available disk space

  • Open a terminal
  • Execute the following command:
    df -h
  • Ensure that you have enough free disk space to create a new partition for swap.

Step 2: Partition the disk

  • Open a terminal
  • Execute the following command to launch the partitioning tool:
    sudo fdisk /dev/sdX

    Replace "sdX" with the desired disk identifier (e.g., sda, sdb).

  • Follow the prompts to create a new partition, assign it the "Linux swap" file system type, and set its size.
  • Save the changes and exit the partitioning tool.

Step 3: Create the swap area

  • Once the partition is created, execute the following command to format it as a swap area:
    sudo mkswap /dev/sdXn

    Replace "sdXn" with the appropriate partition identifier (e.g., sda1).

Step 4: Activate the swap partition

  • Enable the swap partition by executing the following command:
    sudo swapon /dev/sdXn

    Replace "sdXn" with the appropriate partition identifier (e.g., sda1).

  • To verify that the swap partition is active, use the command:
    sudo swapon --show

Step 5: Update fstab file

  • Open the fstab file in a text editor using the following command:
    sudo nano /etc/fstab
  • Add the following line at the end of the file to automatically mount the swap partition on boot:
    /dev/sdXn none swap sw 0 0

    Replace "sdXn" with the appropriate partition identifier (e.g., sda1).

  • Save the file and exit the text editor.

Pros:

  1. Dedicated swap partitions potentially offer better performance compared to swap files.
  2. Allows for fine-grained control over the swap space allocation.

Cons:

  1. Requires manual partitioning and disk space allocation.
  2. Creating a new partition might not be feasible in all scenarios.

Method 3. How to Use a Logical Volume for Swap

Using a logical volume for swap space is a flexible approach that allows dynamic resizing. Follow these steps:

Step 1: Check available disk space

  • Open a terminal
  • Execute the following command:
    df -h
  • Ensure that you have enough free disk space to create a new logical volume.

Step 2: Create a logical volume

  • Open a terminal
  • Execute the following command to create a logical volume for swap space:
    sudo lvcreate -L {SIZE} -n swap_lv {VOLUME_GROUP}

    Replace "{SIZE}" with the desired size (e.g., 1G), and "{VOLUME_GROUP}" with your volume group name.

  • The above command will create a logical volume named "swap_lv" with the specified size.

Step 3: Format the logical volume

  • Execute the following command to format the logical volume for swap space:
    sudo mkswap /dev/{VOLUME_GROUP}/swap_lv

    Replace "{VOLUME_GROUP}" with the actual volume group name.

Step 4: Activate the logical volume

  • Enable the logical volume for swap by executing the following command:
    sudo swapon /dev/{VOLUME_GROUP}/swap_lv

    Replace "{VOLUME_GROUP}" with the actual volume group name.

  • Verify that the logical volume is active by using the command:
    sudo swapon --show

Step 5: Update fstab file

  • Open the fstab file in a text editor using the command:
    sudo nano /etc/fstab
  • Add the following line at the end of the file to automatically activate the logical volume on boot:
    /dev/{VOLUME_GROUP}/swap_lv none swap sw 0 0

    Replace "{VOLUME_GROUP}" with the actual volume group name.

  • Save the file and exit the text editor.

Pros:

  1. Provides flexibility to dynamically resize the swap space.
  2. Can be easily managed using LVM tools and commands.

Cons:

  1. Requires understanding and familiarity with LVM concepts and commands.
  2. May not be suitable for users who do not need or want to manage LVM.

Method 4. How to Enable Zswap

Zswap is a Linux kernel feature that compresses and stores swapped pages in a compressed cache. It aims to improve performance by reducing swap usage. Follow these steps to enable Zswap on Ubuntu 20.04:

Step 1: Check if Zswap is supported

  • Open a terminal
  • Execute the following command to check if Zswap is supported:
    cat /sys/module/zswap/parameters/enabled
  • If the output is "N", it means Zswap is not enabled.

Step 2: Enable Zswap

  • Open a terminal
  • Execute the following command to enable Zswap:
    sudo nano /etc/default/grub
  • In the configuration file, find the line starting with "GRUB_CMDLINE_LINUX_DEFAULT" and append the following parameter at the end of the line:
    zswap.enabled=1
  • Save the file and exit the text editor.

Step 3: Update GRUB configuration

  • Execute the following command to update the GRUB configuration:
    sudo update-grub

Pros:

  1. Zswap can help improve performance by reducing swap usage.
  2. Enabling Zswap is relatively simple and does not require disk partitioning or file creation.

Cons:

  1. Zswap may not provide significant performance improvements on systems with ample physical memory.
  2. Does not directly add additional swap space; instead, it optimizes existing swap operations.

Why Can’t I Add Swap Space on My Ubuntu 20.04?

There are a few reasons why you may face difficulties when trying to add swap space on Ubuntu 20.04. Below are some common reasons and their fixes:

1. Lack of free disk space: If you don’t have enough free disk space, you won’t be able to create a swap file or partition. To fix this, you can free up disk space by deleting unnecessary files or resizing existing partitions to make room for the swap space.

2. Permissions: If you don’t have root access or superuser privileges, you won’t be able to execute commands to create swap space. Ensure that you are logged in as a user with sufficient permissions or use the "sudo" command to elevate your privileges.

3. Incompatibility with system configurations: In some scenarios, certain system configurations or limitations may prevent the addition of swap space. For example, if your system is running in UEFI mode with Secure Boot enabled, certain methods like creating a swap partition may not be feasible. To resolve this, you may need to adjust your system configuration or explore alternative methods like using a swap file or Zswap.

Always ensure you have backups of your data before making any changes to disk partitions or system configurations to avoid data loss or unintended consequences.

Implications and Recommendations

Here are a few implications and recommendations to keep in mind when adding swap space on Ubuntu 20.04:

1. Disk space consumption: Adding swap space, whether through a swap file or partition, will consume disk space. Be mindful of your available disk space and allocate swap space accordingly.

2. Performance considerations: While swap space can improve system performance when RAM is exhausted, it is still slower than physical memory. Relying heavily on swap space may lead to slower response times and disk thrashing. Optimize your system’s memory usage and consider upgrading your RAM if required.

3. Monitoring and tuning: After adding swap space, monitor your system’s memory utilization and performance. Tune your system settings and application behavior to reduce excessive memory usage.

4. Alternative solutions: Adding swap space should not be the only solution to address memory constraints. Consider optimizing your applications, managing background processes, or upgrading your hardware to better meet your memory requirements.

5{"@context":"https://schema.org”,"@type":"FAQPage","mainEntity":null}