In such cases, we can use the parted command. The major difference lies in the partitioning formats that fdisk uses DOS partitioning table format and parted uses GPT format.


TIP: You can use gdisk as well instead of parted tool.


In this article, we will show you to add a new disk larger than 2TB to an existing Linux server such as RHEL/CentOS or Debian/Ubuntu.


First list the current partition details using fdisk command as shown.

# fdisk -l


For the purpose of this article, I am attaching a hard disk of 20GB capacity, which can be followed for disk larger than 2TB as well. Once you added a disk, verify the partition table using same fdisk command as shown.

# fdisk -l


If you are adding a physical hard disk, you may find that partitions already created. In such cases, you can use fdsik to delete the same before using parted.

# fdisk /dev/xvdd


Use d switch for the command to delete the partition and w to write the changes and quit.


Important: You need to be careful while deleting the partition. This will erase the data on the disk.


Now its time to partition a new hard disk using parted command.

# parted /dev/xvdd


Set the partition table format to GPT

(parted) mklabel gpt


Create the Primary partition and assign the disk capacity, here I am using 20GB (in your case it would be 2TB).

(parted) mkpart primary 0GB 20GB


Just for curiosity, let’s see how this new partition is listed in fdisk.

# fdisk /dev/xvdd


Now format and then mount the partition and add the same in /etc/fstab which controls the file systems to be mounted when the system boots.

# mkfs.ext4 /dev/xvdd1


Once the partition has been formatted, now it’s time mount the partition under /data1.

# mount /dev/xvdd1 /data1


For permanent mounting add the entry in /etc/fstab file.

/dev/xvdd1     /data1      ext4      defaults  0   0


Important: Kernel should support GPT in order to partition using GPT format. By default, RHEL/CentOS have Kernel with GPT support, but for Debian/Ubuntu you need to recompile the kernel after changing the config.

Was this answer helpful? 0 Users Found This Useful (0 Votes)