Software & AppsOperating SystemLinux

How To Resize Partitions and Create Swap Using Command Line on a Server

Ubuntu 17

In this comprehensive guide, we’ll walk you through the process of resizing partitions and creating a swap space using the command line on a server. This is a crucial task for system administrators, as it allows for efficient disk space management and improved system performance.

Understanding Partitions and Swap Space

Before we dive into the how-to, it’s important to understand what partitions and swap spaces are. A partition is a division of the storage space on a hard drive, each acting as a separate storage unit. Swap space, on the other hand, is a portion of the hard disk designed to act as an overflow of your system’s physical memory or RAM. It’s used when your system is out of RAM, effectively increasing the amount of memory available.

Checking Disk Space and Partition Layout

The first step in resizing partitions is to check the current disk space and partition layout. You can achieve this by using the df -h command. This command displays the amount of disk space used and available on the Linux file system.

df -h

Unmounting the Partition

Before resizing, you need to unmount the partition. This can be done using the umount command followed by the partition path. For example:

sudo umount /dev/vda

Here, /dev/vda is the partition we want to unmount. Replace this with your specific partition path.

Resizing the File System

Once the partition is unmounted, you can resize it. For ext2, ext3, or ext4 file systems, use the resize2fs command. For example, to shrink the partition to 768MB, you can run:

sudo resize2fs /dev/vda 768M

In this command, 768M is the new size of the partition. Replace this with your desired size.

Modifying the Partition Size

After resizing the file system, you can modify the partition size using a partitioning tool such as fdisk or parted. For instance, you can run:

sudo fdisk /dev/vda

or

sudo parted /dev/vda

Within the partitioning tool, delete the existing partition and create a new one with the desired size. Make sure the new partition is of type “Linux” or “Linux swap” for swap partitions.

Creating and Activating Swap Partition

If you created a new partition, format it as a swap partition using the mkswap command. For example:

sudo mkswap /dev/vda1

Here, /dev/vda1 is the newly created partition. Replace this with your specific partition path.

Next, activate the swap partition using the swapon command:

sudo swapon /dev/vda1

Updating fstab File

Update the /etc/fstab file to automatically mount the swap partition on boot. Add an entry similar to:

/dev/vda1 none swap sw 0 0

This ensures that the swap space is available for use by the system after every reboot.

Remounting the Resized Partition

Finally, you can remount the resized partition using the mount command:

sudo mount /dev/vda /

Remember to double-check all the commands and paths specific to your system before executing them. It’s always a good idea to have a backup of your important data before performing any partition resizing operations.

In conclusion, understanding how to resize partitions and create swap space using the command line is a valuable skill for any system administrator. It allows for more efficient use of disk space and can significantly improve system performance. We hope this guide has been helpful in explaining this process. For further reading, you might find the Linux Partition HOWTO useful.

What is the purpose of resizing partitions and creating swap space?

Resizing partitions allows for efficient disk space management, while creating swap space increases the available memory of a system when the physical memory or RAM is running low.

How can I check the current disk space and partition layout on a Linux server?

You can use the df -h command in the command line to display the disk space used and available on the Linux file system.

How do I unmount a partition before resizing it?

You can use the umount command followed by the partition path. For example, sudo umount /dev/vda will unmount the /dev/vda partition.

How can I resize a file system for ext2, ext3, or ext4 partitions?

You can use the resize2fs command followed by the partition path and the desired new size. For example, sudo resize2fs /dev/vda 768M will shrink the partition to 768MB.

What tools can I use to modify the partition size?

You can use partitioning tools such as fdisk or parted to modify the partition size. For instance, sudo fdisk /dev/vda or sudo parted /dev/vda can be used.

How do I create and activate a swap partition?

After creating a new partition, you can format it as a swap partition using the mkswap command. For example, sudo mkswap /dev/vda1 will format /dev/vda1 as a swap partition. Then, you can activate the swap partition using the swapon command, like sudo swapon /dev/vda1.

How do I update the fstab file to automatically mount the swap partition on boot?

You can edit the /etc/fstab file and add an entry similar to /dev/vda1 none swap sw 0 0. This ensures that the swap space is available after every reboot.

How can I remount the resized partition?

You can use the mount command followed by the partition path and the mount point. For example, sudo mount /dev/vda / will remount the resized partition on the root directory.

Do I need to backup my data before resizing partitions?

It is always recommended to have a backup of your important data before performing any partition resizing operations to avoid potential data loss.

Where can I find additional resources on Linux partitioning?

You might find the Linux Partition HOWTO useful for further reading on Linux partitioning.

Leave a Comment

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