If you’re like most Linux users, you probably have a bunch of partitions on your hard drive that don’t really do anything. Maybe there’s a partition for your operating system, one for your data, and one for your swap space. But what if you want to add another partition? Or delete one? Well, fortunately, Linux has a tool called Fdisk that can help you manage all of your partitions. Fdisk is a command-line tool that can be used to create, delete, resize, and move partitions on your hard drive. In this article, we’ll show you how to use Fdisk to manage your partitions. First things first: Before we can use Fdisk to manage our partitions, we need to know what they are. On most Linux systems, the root (/) partition is the only partition. This is the part of the hard drive where the operating system and all of our user files live. The rest of the hard drive is usually divided up into other partitions: for example, there might be a partition for storage devices like USB drives or CD-ROMs, or there might be a separate partition for each user on the system. To see what’s currently on your hard drive and which partitions are currently active (i.e., in use), run the following command:
fdisk -l
Disk /dev/sda: 1000GB Sector size (logical/physical): 512B/512B Partition Table: gpt Disk Flags : 0x0 Partition Number : 1 First sector : 2048 Last sector : 20971584 Data Size : 931GB Sector Size (logical/physical): 512B/512B Partition Table: gpt Disk Flags : 0x0 Partition Number : 2 First sector : 1048576 Last sector : 20971584 Data Size : 931GB Sector Size (log ..
The fdisk command is a text-based utility for viewing and managing hard disk partitions on Linux. It’s one of the most powerful tools you can use to manage partitions, but it’s confusing to new users.
This tutorial will go through the basics of using fdisk to manage a partition table. After using fdisk, you’ll have to use a mkfs command to format new partitions with a file system.
Sudo vs. Su
On Ubuntu, Linux Mint or other Ubuntu-derived distributions, the fdisk and mkfs commands must be prefixed with sudo. On distributions that don’t use sudo, use the su – command first to get a root shell, then type every command without sudo.
List Partitions
The sudo fdisk -l commands lists the partitions on your system.
You can add a disk’s device name to list only partitions on it. For example, use the following command to only list partitions on the first disk device:
Entering Command Mode
To work on a disk’s partitions, you have to enter command mode. You’ll need the device name of a disk from the fdisk -l command. The following command enters command mode for the first disk device:
Don’t edit partitions while they’re in use. If you want to edit system partitions, boot from a live CD first.
Using Command Mode
In command mode, you use single-letter commands to specify actions you want to take. Type m and press Enter to see a list of the commands you can use.
Viewing the Partition Table
Use p to print the current partition table to the terminal from within command mode.
Deleting a Partition
Use the d command to delete a partition. You’ll be asked for the number of the partition you want to delete, which you can get from the p command. For example, if I wanted to delete the partition at /dev/sda5, I’d type 5.
After deleting the partition, you can type p again to view the current partition table. The partition appears deleted, but fdisk doesn’t write these changes to disk until you use the w command.
Creating a Partition
Use the n command to create a new partition. You can create a logical or primary partition (l for logical or p for primary). A disk can only have four primary partitions.
Next, specify the sector of the disk you want the partition to start at. Press Enter to accept the default sector, which is the first free sector on the disk.
Last, specify the last sector of the partition on the disk. If you want to use up all available space after the initial sector, just press Enter. You can also specify a specific size, such as +5G for a five gigabyte partition or +512M for a 512 megabyte partition. If you don’t specify a unit after the + sign, fdisk uses sectors as the unit. For example, +10000 results in the end of the partition being 10000 sectors after its beginning.
System ID
The n command I just ran recreated the swap partition I deleted earlier — or did it? If I run the p command again, I’ll see that the new /dev/sda5 partition is a “Linux” partition instead of a “Linux swap” partition.
If I want to change its type, I can use the t command and specify the partition’s number.
I’ll be asked for the hex code of the type. I don’t know it, so I can type L to view a list of hex codes.
It says 82 is the code for Linux swap partitions, so I can type that.
This doesn’t format the partition with the file system you select. You’ll have to do that later with the appropriate mkfs command.
Writing Changes
Use w to write the changes you’ve made to disk.
Use q if you want to quit without saving changes.
Formatting a Partition
You must format new partitions with a file system before you can use them. You can do this with the appropriate mkfs command. For example, this command formats the fifth partition on the first disk with the ext4 file system.
Use the mkswap command if you want to format a partition as a swap partition:
Fdisk contains a variety of other commands, including expert commands you can access by running the x command first. Check out fdisk’s man page with the man fdisk command for more detailed information.