Linux format and mount disk

Ubuntu Documentation


While it’s not every day that you need to add a new hard drive to your computer, the task does not have to be complicated. Use this guide to help you install a new hard drive with an existing Ubuntu system, and partition it for use. Before beginning, you need to consider for what you will be using the hard drive.

  • Will the drive be used only with Ubuntu?
  • Will the drive need to be accessible from both Ubuntu and Windows?
  • How do you want to divide the free space? As a single partition, or as several?
  • Do you want any of the partitions to be larger than 2 TB?

This guide goes over procedures for a single partition drive install only. Multiple partition drive installations are not very hard, and you may very well figure it out by using this guide; however, make sure you add an entry in /etc/fstab for each partition, not just the drive.

A Note about File Systems:

Drives that are going to be used only under Ubuntu should be formatted using the ext3/ext4 file system (depending on which version of Ubuntu you use and whether you need Linux backwards compatibility). For sharing between Ubuntu and Windows, FAT32 is often the recommended file system, although NTFS works quite well too. If you are new to file systems and partitioning, please do some preliminary research on the two before you attempt this procedure.

Determine Drive Information

We assume that the hard drive is physically installed and detected by the BIOS.

To determine the path that your system has assigned to the new hard drive, open a terminal and run:

This should produce output similar to this sample:

Be sure to note the «logical name» entry, as it will be used several times throughout this guide.

Partition The Disk

If you have already formatted the drive and it contains data, skip this step and move on to «Mount Point.» If the drive is still blank and unformatted, then you have two options: formatting the drive using the command line, or installing GParted for a graphical approach. Decide whether you want the drive to contain one single partition, or if you want to divide the space up between two or more partitions.

Partitioning Using GParted

If System > Administration > GNOME Partition Editor (or ‘Partition Editor’) is not available, install «GParted» using «sudo apt-get install gparted» from the command line, «Add/Remove Software» (or «Add/Remove. «) from the Applications menu, or «Synaptic Package Manager» from the System > Administration menu. Open GParted and let’s get started.

Always use gksu or gksudo for graphical applications like gparted and sudo for command line applications, like apt-get.

In the top-right corner of the window, choose your new hard drive from the drop-down list, referring back to the «logical name» from earlier. The window should refresh and show you a representation of the new drive. Assuming that the drive has yet to have been used, a white bar will run across the window. Use these steps to partition the drive with a single partition.

1) Right-click on the white bar and choose «New.»

2) For «New Size» the number should be the maximum allowable, to fill the entire disk.

Читайте также:  Как печать двухсторонней печатью на принтере epson

3) Choose «Primary Partition»

4) Now decide on a filesystem. Use «ext3» if the drive will only be used with Ubuntu. For file-sharing between Ubuntu and Windows, you should use «fat32.» If you are unsure, search around the wiki and forums for advice.

5) Now click Add to compute the partition. The graphical display should update to show a new partition covering the entire disk.

6) To finish, click «Apply,» or Edit > Apply. The disk will then be partitioned and formatted. You may now close GParted.

Command Line Partitioning

There are two commands that can be used in the command line to partition a new drive: fdisk and parted. fdisk is an older program, and its main downside is that it can only create MBR partitions. parted allows you to create MBR or GPT partitions.


MBR (Master Boot Record) has two main limitations: you cannot have a partition larger than 2 TB and you cannot have more than 4 primary partitions. GPT (GUID Partition Table) can do both of these things, but it is part of the EFI standard. This means your kernel must support EFI. The latest version of the kernel supports EFI, and almost all the latest distros do too.


Refer back to the logical name you noted from earlier. For illustration, I’ll use /dev/sdb, and assume that you want a single partition on the disk, occupying all the free space.

If the number of cylinders in the disk is larger than 1024 (and large hard drives always have more), it could, in certain setups, cause problems with:

  1. software that runs at boot time (e.g., old versions of LILO)
  2. booting and partitioning software from other OSs (e.g., DOS FDISK, OS/2 FDISK)

Otherwise, this will not negatively affect you.

1) Initiate fdisk with the following command:

2) Fdisk will display the following menu:

3) We want to add a new partition. Type «n» and press enter.

4) We want a primary partition. Enter «p» and enter.

5) Since this will be the only partition on the drive, number 1. Enter «1» and enter.

If it asks about the first cylinder, just type «1» and enter. (We are making 1 partition to use the whole disk, so it should start at the beginning.)

6) Now that the partition is entered, choose option «w» to write the partition table to the disk. Type «w» and enter.

7) If all went well, you now have a properly partitioned hard drive that’s ready to be formatted. Since this is the first partition, Linux will recognize it as /dev/sdb1, while the disk that the partition is on is still /dev/sdb.


Refer back to the logical name you noted from earlier. For illustration, I’ll use /dev/sdb, and assume that you want a single partition on the disk, occupying all the free space.

1) Start parted as follows:

2) Create a new GPT disklabel (aka partition table):

3) Set the default unit to TB:

4) Create one partition occupying all the space on the drive. For a 4TB drive:

5) Check that the results are correct:

There should be one partition occupying the entire drive.

6) Save and quit «parted»:

Command Line Formatting

To format the new partition as ext4 file system (best for use under Ubuntu):

To format the new partition as fat32 file system (best for use under Ubuntu & Windows):

As always, substitute «/dev/sdb1» with your own partition’s path.

Modify Reserved Space (Optional)

When formatting the drive as ext2/ext3, 5% of the drive’s total space is reserved for the super-user (root) so that the operating system can still write to the disk even if it is full. However, for disks that only contain data, this is not necessary.

NOTE: You may run this command on a fat32 file system, but it will do nothing; therefore, I highly recommend not running it.

Читайте также:  Как посмотреть dpi принтера

You can adjust the percentage of reserved space with the «tune2fs» command, like this:

This example reserves 1% of space — change this number if you wish.

Using this command does not change any existing data on the drive. You can use it on a drive which already contains data.

Create A Mount Point

Now that the drive is partitioned and formatted, you need to choose a mount point. This will be the location from which you will access the drive in the future. I would recommend using a mount point with «/media», as it is the default used by Ubuntu. For this example, we’ll use the path «/media/mynewdrive»

Now we are ready to mount the drive to the mount point.

Mount The Drive

You can choose to have the drive mounted automatically each time you boot the computer, or manually only when you need to use it.

Automatic Mount At Boot

Note: Ubuntu now recommends to use UUID instead, see the instructions here:

You’ll need to edit /etc/fstab:

Add this line to the end (for ext3 file system):

Add this line to the end (for fat32 file system):

  • The defaults part may allow you to read, but not write. To write other partition and FAT specific options must be used. If gnome nautilus is being used, use the right-click, mount method, from computer folder. Then launch the mount command from terminal, no options. The last entry should be the FAT drive and and look something like: All of the parts between the parenthesis are the mount options and should replace «defaults» in the fstab file. The «2» at the end instructs your system to run a quick file system check on the hard drive at every boot. Changing it to «0» will skip this. Run ‘man fstab’ for more info here.

You can now run «sudo mount -a» (or reboot the computer) to have the changes take effect.

If you want to allow a normal user to create files on this drive, you can either give this user ownership of the top directory of the drive filesystem: (replace USERNAME with the username)

or in a more flexible way, practical if you have several users, allow for instance the users in the plugdev group (usually those who are meant to be able to mount removable disks, desktop users) to create files and sub-directories on the disk:

The last «chmod +t» adds the sticky bit, so that people can only delete their own files and sub-directories in a directory, even if they have write permissions to it (see man chmod).

Manually Mount

Alternatively, you may want to manually mount the drive every time you need it.

For manual mounting, use the following command:

When you are finished with the drive, you can unmount it using:

That’s it

Need Additional Help?

If you run into problems or need more help, search the wiki or forums at If you cannot find what you are looking for, simply ask for help.

InstallingANewHardDrive (последним исправлял пользователь runverzagt 2019-01-25 15:30:08)

The material on this wiki is available under a free license, see Copyright / License for details
You can contribute to this wiki, see Wiki Guide for details


How to Format Disk Partitions in Linux

Home » Bare Metal Servers » How to Format Disk Partitions in Linux

A disk partition must be formatted and mounted before use. The formatting process can also be done for several other reasons, such as changing the file system, fixing errors, or deleting all data.

In this tutorial, you will learn how to format and mount disk partitions in Linux using ext4, FAT32, or NTFS file system.

Читайте также:  Изменить размер столбца postgresql

  • A system running Linux
  • A user account with sudo or root privileges
  • Access to a terminal window / command line (Activities >Search >Terminal)

Checking the Partitions

Before formatting, locate a partition you wish to format. To do so, run the lsblk command that displays block devices. Block devices are files that represent devices such as hard drives, RAM disks, USB drives, and CD/ROM drives.

The terminal prints out a list of all block devices as well as information about them:

  • NAME – Device names
  • MAJ:MIN – Major or minor device numbers
  • RM – Whether the device is removable (1 if yes, 0 if no)
  • SIZE – The size of the device
  • RO – Whether the device is read-only
  • TYPE – The type of the device
  • MOUNTPOINT – Device’s mount point

We will use the /dev/sdb1 partition as an example.

The lsblk command without additional options does not display information about the devices’ file systems.

To display a list containing file system information, add the -f option:

The terminal prints out the list of all block devices. The partitions that do not contain information on the file system in use are non-formatted partitions.

Note: Consider learning how to create partitions in Linux.

Formatting Disk Partition in Linux

There are three ways to format disk partitions using the mkfs command, depending on the file system type:

The general syntax for formatting disk partitions in Linux is:

Formatting Disk Partition with ext4 File System

1. Format a disk partition with the ext4 file system using the following command:

2. Next, verify the file system change using the command:

The terminal prints out a list of block devices.

3. Locate the preferred partition and confirm that it uses the ext4 file system.

Formatting Disk Partition with FAT32 File System

1. To format a disk with a FAT32 file system, use:

2. Again, run the lsblk command to verify the file system change and locate the preferred partition from the list.

The expected output is:

Formatting Disk Partition with NTFS File System

1. Run the mkfs command and specify the NTFS file system to format a disk:

The terminal prints a confirmation message when the formatting process completes.

2. Next, verify the file system change using:

3. Locate the preferred partition and confirm that it uses the NFTS file system.

Mounting the Disk Partition in Linux

Before using the disk, create a mount point and mount the partition to it. A mount point is a directory used to access data stored in disks.

1. Create a mount point by entering:

2. After that, mount the partition by using the following command:

Note: Replace [mountpoint] with the preferred mount point (example: /usr/media ).

There is no output if the process completes successfully.

3. Verify if the partition is mounted using the following command:

The expected output is:

Understanding the Linux File System

Choosing the right file system before formatting a storage disk is crucial. Each type of file system has different file size limitations or different operating system compatibility.

The most commonly used file systems are:

Their main features and differences are:

File System Supported File Size Compatibility Ideal Usage
FAT32 up to 4 GB Windows, Mac, Linux For maximum compatibility
NTFS 16 EiB – 1 KB Windows, Mac (read-only), most Linux distributions For internal drives and Windows system file
Ext4 16 GiB – 16 TiB Windows, Mac, Linux (requires extra drivers to access) For files larger than 4 GB

Note: Refer to our Introduction to Linux File System article to learn more about the evolution and features of different Linux file systems.

After following this tutorial, you should be able to format and mount a partition in Linux in various file systems. Partition manipulation is essential for efficient data management, and next, we recommend learning how to delete a partition in Linux.