Today I bought 2 3 TB hard drives to use in my new server.

I'm writing this in case other people aren't aware that some of the traditional hard drive management methods don't work for drives larger than 2 TB.

Specifically, fdisk and MSDOS type partition tables.

Here is how I created a single partition on my 3 TB drives.


Via parted.

#parted -a optimal /dev/sdb

(parted) rm 1  <- this removed the 2TB partition that fdisk made. 

NOTE: fdisk has a 2 TB limit, apparently forced by MSDOS style partition tables.  Ever heard the story about how the width of a donkey ultimately determined the diameter of the space shuttle ?

(parted)  mklabel gpt  <- this is NOT making a label for the drive.  "man parted" is your friend.

(parted) mkpart primary ext4 1 -1  <- this makes the partition itself, using the entire drive, which is what I wanted.

(parted) print

(parted) quit

# mkfs -text4 /dev/sdb1     <- this formats the partition
#e2label /dev/sdb1 myth    <- this gives it a label, as used by mount in fstab, ie "LABEL=..."


Via gparted.

It turns out that the whole process can be done from within gparted, if you know what you are doing.

The first thing you need to do is create the partition table. 

IF you have used fdisk on the drive previously, the partition table type is going to MSDOS, which has the 2TB limit.  If you continue with the MSDOS partition table, gparted will allow you to select a 3TB partition to make, but it will give you the following error:
partition length of 5860528002 sectors exceeds the msdos-partition-table-imposed maximum of 4294967295
 
To get around this, select Advanced on the partition table options window and set the partition table type to gpt.

Then you can proceed as you normally would to partition a drive with gparted.  Ie add new partition(s), set the partition type, labels, etc.

At this point you have an ext4 formatted 3TB drive.

However, in F15 KDE at least, it doesn't seem to automount like a drive with an MSDOS partition table. The drive will not automatically appear in the Places column in Dolphin, for example. Nor will it appear in the list created by df.

However, it is available to manually mount.   Ie, #mount /dev/sdb1 temp, just like the old days.*  And once you do that, it appears in the df list, though still not in the Places column in Dolphin.

I hope this helps someone.

*This might be particular to my machine being that the drive is a hot swap SATA device and I did not remove it and replace it.    However, drives with MSDOS type partition tables auto mounted using the very same command sequence.