Feature image for the article about how to format your USB drive with GParted

Format your USB drive with GParted

USB drives typically come preformatted as FAT32 or NTFS file systems. Although Linux can handle this, the EXT4 file system offers advantage: EXT4 gives you far better control over file permissions and ownership. As whip-cream on top, you can stop worrying about data fragmentation as well. In this article you learn how to format your USB drive with the help of GParted. GParted is a graphical user interface program, available on pretty much all popular Linux distributions.

Background

USB drives are wonderfully versatile and low-cost devices that probably every PC user makes use of. I personally use them for quickly copying files from one PC to the other and for backup purposes. Newly purchased USB drives typically come formatted as FAT32 or NTFS file systems. From a manufacturer’s perspective this makes sense: Linux, Windows and macOS can work with these file systems, making the USB drive plug-and-play.

In case you solely run Linux on your PCs, the EXT4 file system serves you far better. With the EXT4 file system, you preserve file permissions when storing data on it. Besides that you have more control over file ownership. Additionally, you do not have to worry about data fragmentation. Okay great, but how do you change the file system on your USB drive to EXT4?

This article shows you how to format your USB drive to EXT4, with the help of GParted. GParted stands for Gnome Partition editor. GParted is a graphical user interface program for creating and formatting partitions on drives. Note that it works on all sorts of drives, including: HDD, SSD, USB and SD-card. In case you prefer to work from the terminal instead, refer to the article about how to format and mount a USB drive in the Linux terminal.

Screenshot of the GParted program.

What do you need

To complete the steps in this tutorial, you just need:

  • Any type of Linux PC with whichever desktop environment you prefer.
  • A USB drive.

Important note if your USB drive contains data that you do not want to lose: Make sure to backup the data on your USB drive first, before continuing. Your data will get lost when you format your USB drive to EXT4 with GParted.

Personally, I’ll use my Debian based laptop with Gnome desktop environment for this article.

Install the GParted program

Although all Linux distributions offer the GParted program in their online package repositories, it is not installed by default. Therefore we’ll kick off this article by installing the GParted program. The following list shows the command to run in the terminal for installing GParted, filtered by Linux distribution:

  • Ubuntu and Debian: sudo apt install gparted
  • Fedora: sudo dnf install gparted
  • openSUSE: sudo zypper install gparted
Terminal screenshot that shows you how to install GParted on Debian and Ubuntu.

After installation completion, you can start GParted through your desktop environment’s application menu.

Identify your USB drive

Before formatting the USB drive, we first determine its device name. I personally find this procedure easiest:

  1. Start the GParted program, without the USB drive plugged into your PC.
  2. The drop-down list in the top-right corner lists all devices. Click it and make a mental note of the currently available devices.
  3. Plug the USB drive into your PC.
  4. Select GParted → Refresh Devices from the program menu.
  5. Now click on the drop-down lists again to see which new device showed up.

Refer to the following screen animation as an example on my PC:

Screen animation explaining how you can determine the device name under Linux of your USB drive, with the help of GParted.

As you can see, on my PC the USB drive is known as /dev/sdb. I’ll use this device name in the remainder of this article.

Unmount the partitions on your USB drive

Most Linux systems with a desktop environment automatically mount the USB drive, when plugged in. Before we can format the USB drive with GParted, we need to unmount the USB drive. Luckily, you can perform this operation directly from within the GParted user interface.

Right-click the partition on the USB drive. A context menu pops up. The context menu shows an entry called Unmount, if the partition in question is currently mounted. If the context menu doesn’t show the Unmount entry, then your partition is already unmounted. Click on entry Unmount to proceed with the unmount operation:

Partial GParted screenshot that show you how to unmount the partitions of your USB drive, which is needed before you can format it.

In case your USB drive consists of multiple partitions, repeat this step for all partitions.

Use GParted to format your USB drive to EXT4

Before formatting the USB drive with GParted, we should first remove the existing partitions. Creating a new partition table on the USB drive, automatically removes whatever partitions the USB drive currently holds.

Just one more reminder that the operation you are about to perform will result in the loss of all data on the device. Double-check that you selected the correct device in GParted and that you backed up any important data currently stored on it.

Create a new partition table

Follow these steps to create a new partition table:

  1. Select the correct device in the drop-down list in the top-right corner. My PC knows the USB drive as /dev/sdb. Make sure to change this to whatever device name your PC assigned to your USB drive.
  2. From the program menu, select Device → Create Partition Table…
  3. On the dialog that appeared, select msdos as the partition table type and click the Apply button.
GParted screen animation that shows you how to create a new partition table. This will automatically delete whatever partitions are currently available on the USB drive.

Create a new partition

With the partition table created, we continue with the next step. In this step we create a new EXT4 partition on the USB drive and format it. From the program menu, select Partition →  New. The Create new Partition dialog shows up. You can accept all the default proposed values. Just make sure that ext4 is specified for the File system and click the Add button.

GParted new partition dialog that shows you which options to configure for the new partition. We're creating one large partition with the EXT4 file system.

Look at the status bar at the bottom. It says 1 operation pending. GParted planned the partition creation, but hasn’t actually performed this operation yet. To proceed, select Edit → Apply All Operations from the program menu. This creates the partition and automatically formats it to the EXT4 file system:

GParted screen animation that shows you how to actually format the new partition on the USB drive.

At this point you successfully formatted your USB drive to EXT4 with GParted. Go head and close the GParted program. Next, remove the USB drive from your PC and right away plug it in again. This automatically mounts the newly created EXT4 partition on your Linux system.

Obtain write permissions to your USB drive

As mentioned in the introduction, the EXT4 file system gives you better control over file ownership and permissions on your USB drive. Consequently, it can happen that your user currently does not have write access to the USB drive. Let’s investigate and solve this.

First we need to find out where Linux mounted your USB drive to. Run the following command from the terminal

  • lsblk -p
Terminal screenshot showing the output of the "lsblk -p" command. It is used to determine to which directory the USB drive was automatically mounted.

As you can see, Linux mounted the partition we created on the USB drive to: /media/pragmalin/c8c35b05-25b7-49e7-a4ae-96da1e385656.

Let’s inspect its current permissions by running the ls -l command on its parent directory:

  • ls -l /media/pragmalin/
Terminal screenshot that shows you the default owner and permissions of the USB drive mount point. Currently only the root user has write access.

As you can see in the screenshot above, only the root user has permission to write to the USB drive. That explains why our own user cannot write to the USB drive. To fix this we simply need to change the owner of the directory, where the partition of the USB drive was mounted to. In my case:

  • sudo chown $USER: /media/pragmalin/c8c35b05-25b7-49e7-a4ae-96da1e385656

Note that $USER automatically gets replaced with your current user name.

Terminal screenshot that shows you how to change the owner of the USB drive mount point to our own user. Afterwards we have full read and write access to the USB drive, which we just formatted with GParted.

As you can see your user can now both read and write to the partition on the USB drive.

Wrap up

In this article you learned how to format your USB drive to the EXT4 file system, with the help of the GParted program. This file system offers advantages under Linux over FAT32 and NTFS. EXT4 gives you far better control over file permissions and ownership. Furthermore, you do not have to worry about data fragmentation.

To summarize, we completed these steps:

  • Installed the GParted program.
  • Identified the device name of the USB drive.
  • Unmounted all partitions on the USB drive, if applicable.
  • Removed all existing partitions from the USB drive, by creating a new partition table.
  • Created a new partition on the USB drive, formatted as an EXT4 file system.
  • Gave your user full ownership, including write permissions to the partition on the USB drive.

With the help of GParted, creating file systems and partitions becomes relatively easy. Just keep in mind that changing partitions tends to result in data loss. Therefore make sure to backup whatever important data the USB drive currently holds, before making any chances. Also always double-check that you selected the correct device in GParted. Otherwise it can happen that you accidentally erase the data on another disk.

PragmaticLinux

Long term Linux enthusiast, open source software developer and technical writer.

View all posts by PragmaticLinux →

One thought on “Format your USB drive with GParted

Comments are closed.