Help Center/ Elastic Cloud Server/ Troubleshooting/ Disk Space Management Issues/ How Do I Create a Swap Partition or File in Linux?
Updated on 2024-08-15 GMT+08:00

How Do I Create a Swap Partition or File in Linux?

Scenarios

This section describes how to create a swap partition on ECS running CentOS 6.8.

Constraints

A file of a specified size is to be created. Ensure that the system disk has enough available space.

Scenario 1: Creating a Swap Partition on a Block Storage Device

  1. Run the following command to create a partition of 2 GB, for example:

    fdisk /dev/vdb

    Information similar to the following is displayed:

    Command (m for help): n
    Partition type:
       p   primary (0 primary, 0 extended, 4 free)
       e   extended
    Select (default p): 
    Using default response p
    Partition number (1-4, default 1): 
    First sector (2048-20971519, default 2048): 
    Using default value 2048
    Last sector, +sectors or +size{K,M,G} (2048-20971519, default 20971519): +2G
    Partition 1 of type Linux and of size 2 GiB is set
    Command (m for help): p
    
    Disk /dev/vdb: 10.7 GB, 10737418240 bytes, 20971520 sectors
    Units = sectors of 1 * 512 = 512 bytes
    Sector size (logical/physical): 512 bytes / 512 bytes
    I/O size (minimum/optimal): 512 bytes / 512 bytes
    Disk label type: dos
    Disk identifier: 0x1f02f438
    
       Device Boot      Start         End      Blocks   Id  System
         /dev/vdb1       2048     4196351     2097152   83   Linux
    
    Command (m for help): w
    The partition table has been altered!
    
    Calling ioctl() to re-read partition table.
    Syncing disks.
  2. Run the following command to configure the newly created partition as swap space:

    mkswap /dev/vdb1

  3. Run the following command to activate the swap partition:

    swapon /dev/vdb1

  4. Run the following command to verify the activated swap:

    swapon -s

  5. Run the following command to obtain the swap partition UUID:

    blkid |grep swap |awk '{print $2}'

    UUID="1ee90e3c-1538-453b-9240-ad430f835f6f" 
  6. To mount the swap partition automatically upon system startup, add an entry for the swap partition to /etc/fstab.

    In this example, the swap partition UUID obtained in step 5 is 1ee90e3c-1538-453b-9240-ad430f835f6f. You need to run the following command:

    echo "UUID=1ee90e3c-1538-453b-9240-ad430f835f6f swap swap defaults 0 0" >>/etc/fstab

  7. Run the following command to mount the swap partition:

    mount -a

Scenario 2: Creating a Swap Partition on a Block Storage Device Simulated by a File

The performance of the block storage device simulated by a file is not as good as that of the passthrough block storage device.

  1. Run the following command to create a file of 1 GB, for example:

    dd if=/dev/zero of=/swapfile bs=1M count=1000

  2. Run the following command to modify the file permissions:

    chmod 600 /swapfile

  3. Run the following command to configure the file as swap space:

    mkswap /swapfile

  4. Run the following command to activate the swap file:

    swapon /swapfile

  5. To mount the swap partition automatically upon system startup, add an entry for the swap file to /etc/fstab.

    echo "/swapfile swap swap defaults 0 0" >>/etc/fstab

  6. Run the following command to mount the swap partition:

    mount -a