
In this tutorial, we will learn how to create partition in Linux. Basically, we will create primary partition in Linux system.
Table of Contents
1. Before creating a partition on your system, you need to list all the partitions on your system. This is essential because you need to choose a disk before you partition it. If you did not add any disk then you can follow my article Create Shared disk in VirtualBox.
[root@node1 ~]# ls /dev/sd* /dev/sda /dev/sda1 /dev/sda2 /dev/sda3 /dev/sdb /dev/sdc /dev/sdd
From the above command, we can find the disk /dev/sda has three partitions /dev/sda1, /dev/sda2, and /dev/sda3. sda means local disk so these three are local partitions. We do not see any partitions for the disks /dev/sdb, /dev/sdc and /dev/sdd.
OR,
[root@node1 ~]# fdisk -l Disk /dev/sdb: 10.7 GB, 10737418240 bytes, 20971520 sectors Units = sectors of 1 * 512 = 512 bytes Sector size (logical/physical): 512 bytes / 512 bytes I/O size (minimum/optimal): 512 bytes / 512 bytes Disk label type: dos Disk identifier: 0x94e57bd6 Device Boot Start End Blocks Id System WARNING: fdisk GPT support is currently new, and therefore in an experimental phase. Use at your own discretion. Disk /dev/sda: 107.4 GB, 107374182400 bytes, 209715200 sectors Units = sectors of 1 * 512 = 512 bytes Sector size (logical/physical): 512 bytes / 512 bytes I/O size (minimum/optimal): 512 bytes / 512 bytes Disk label type: gpt Disk identifier: A5182436-2B43-4F97-B1A4-A03B862DC141 # Start End Size Type Name 1 2048 411647 200M EFI System EFI System Partition 2 411648 2508799 1G Microsoft basic 3 2508800 209713151 98.8G Linux LVM Disk /dev/sdd: 16.1 GB, 16106127360 bytes, 31457280 sectors Units = sectors of 1 * 512 = 512 bytes Sector size (logical/physical): 512 bytes / 512 bytes I/O size (minimum/optimal): 512 bytes / 512 bytes Disk label type: dos Disk identifier: 0x8f77a9f2 Device Boot Start End Blocks Id System Disk /dev/sdc: 16.1 GB, 16106127360 bytes, 31457280 sectors Units = sectors of 1 * 512 = 512 bytes Sector size (logical/physical): 512 bytes / 512 bytes I/O size (minimum/optimal): 512 bytes / 512 bytes Disk label type: dos Disk identifier: 0xe6e0612d Device Boot Start End Blocks Id System Disk /dev/mapper/ol-root: 53.7 GB, 53687091200 bytes, 104857600 sectors Units = sectors of 1 * 512 = 512 bytes Sector size (logical/physical): 512 bytes / 512 bytes I/O size (minimum/optimal): 512 bytes / 512 bytes Disk /dev/mapper/ol-swap: 8455 MB, 8455716864 bytes, 16515072 sectors Units = sectors of 1 * 512 = 512 bytes Sector size (logical/physical): 512 bytes / 512 bytes I/O size (minimum/optimal): 512 bytes / 512 bytes Disk /dev/mapper/ol-home: 43.9 GB, 43939528704 bytes, 85819392 sectors Units = sectors of 1 * 512 = 512 bytes Sector size (logical/physical): 512 bytes / 512 bytes I/O size (minimum/optimal): 512 bytes / 512 bytes
From the above output, we can see only /dev/sda has local partitions but /dev/sdb, /dev/sdc and /dev/sdd do not have any partitions. If any disk has partitions, you will see rows for the below columns. In this output, only /dev/sda disk has three rows for the below columns but others do not.
Device Boot Start End Blocks Id System
2. In this practice we will create one partition of 10GB from disk /dev/sdb, three partitions of 5GB each from the disk /dev/sdc and one partition of 15GB from the disk /dev/sdd.
Let’s create a partition of 10g from disk /dev/sdb.
[root@node1 ~]# fdisk /dev/sdb Welcome to fdisk (util-linux 2.23.2). Changes will remain in memory only, until you decide to write them. Be careful before using the write command. Command (m for help): p ---> print the partition table for /dev/sdb Disk /dev/sdb: 10.7 GB, 10737418240 bytes, 20971520 sectors Units = sectors of 1 * 512 = 512 bytes Sector size (logical/physical): 512 bytes / 512 bytes I/O size (minimum/optimal): 512 bytes / 512 bytes Disk label type: dos Disk identifier: 0x94e57bd6 Device Boot Start End Blocks Id System Command (m for help): n ---> add a new partition Partition type: p primary (0 primary, 0 extended, 4 free) e extended Select (default p): p Partition number (1-4, default 1): 1 First sector (2048-20971519, default 2048): ----> Press ENTER Using default value 2048 Last sector, +sectors or +size{K,M,G} (2048-20971519, default 20971519): ---> Press ENTER Using default value 20971519 Partition 1 of type Linux and of size 10 GiB is set Command (m for help): p Disk /dev/sdb: 10.7 GB, 10737418240 bytes, 20971520 sectors Units = sectors of 1 * 512 = 512 bytes Sector size (logical/physical): 512 bytes / 512 bytes I/O size (minimum/optimal): 512 bytes / 512 bytes Disk label type: dos Disk identifier: 0x94e57bd6 Device Boot Start End Blocks Id System /dev/sdb1 2048 20971519 10484736 83 Linux Command (m for help): w --->write table to disk and exit The partition table has been altered! Calling ioctl() to re-read partition table. Syncing disks.
3. Run the below command to check if the partition for the disk /dev/sdb has been created.
[root@node1 ~]# ls /dev/sd* /dev/sda /dev/sda1 /dev/sda2 /dev/sda3 /dev/sdb /dev/sdb1 /dev/sdc /dev/sdd
You can see sdb1 partition has been created from the disk sdb.
4. Now we will create three partitions 5GB each from the disk /dev/sdc.
[root@node1 ~]# fdisk /dev/sdc Welcome to fdisk (util-linux 2.23.2). Changes will remain in memory only, until you decide to write them. Be careful before using the write command. Command (m for help): p Disk /dev/sdc: 16.1 GB, 16106127360 bytes, 31457280 sectors Units = sectors of 1 * 512 = 512 bytes Sector size (logical/physical): 512 bytes / 512 bytes I/O size (minimum/optimal): 512 bytes / 512 bytes Disk label type: dos Disk identifier: 0xe6e0612d Device Boot Start End Blocks Id System Command (m for help): n Partition type: p primary (0 primary, 0 extended, 4 free) e extended Select (default p): p Partition number (1-4, default 1): 1 First sector (2048-31457279, default 2048): ---> Press ENTER Using default value 2048 Last sector, +sectors or +size{K,M,G} (2048-31457279, default 31457279): +5G Partition 1 of type Linux and of size 5 GiB is set Command (m for help): p Disk /dev/sdc: 16.1 GB, 16106127360 bytes, 31457280 sectors Units = sectors of 1 * 512 = 512 bytes Sector size (logical/physical): 512 bytes / 512 bytes I/O size (minimum/optimal): 512 bytes / 512 bytes Disk label type: dos Disk identifier: 0xe6e0612d Device Boot Start End Blocks Id System /dev/sdc1 2048 10487807 5242880 83 Linux Command (m for help): n Partition type: p primary (1 primary, 0 extended, 3 free) e extended Select (default p): p Partition number (2-4, default 2): 2 First sector (10487808-31457279, default 10487808): ---> Press ENTER Using default value 10487808 Last sector, +sectors or +size{K,M,G} (10487808-31457279, default 31457279): +5G Partition 2 of type Linux and of size 5 GiB is set Command (m for help): p Disk /dev/sdc: 16.1 GB, 16106127360 bytes, 31457280 sectors Units = sectors of 1 * 512 = 512 bytes Sector size (logical/physical): 512 bytes / 512 bytes I/O size (minimum/optimal): 512 bytes / 512 bytes Disk label type: dos Disk identifier: 0xe6e0612d Device Boot Start End Blocks Id System /dev/sdc1 2048 10487807 5242880 83 Linux /dev/sdc2 10487808 20973567 5242880 83 Linux Command (m for help): n Partition type: p primary (2 primary, 0 extended, 2 free) e extended Select (default p): p Partition number (3,4, default 3): 3 First sector (20973568-31457279, default 20973568): ---> Press ENTER Using default value 20973568 Last sector, +sectors or +size{K,M,G} (20973568-31457279, default 31457279): --> Press ENTER Using default value 31457279 Partition 3 of type Linux and of size 5 GiB is set Command (m for help): p Disk /dev/sdc: 16.1 GB, 16106127360 bytes, 31457280 sectors Units = sectors of 1 * 512 = 512 bytes Sector size (logical/physical): 512 bytes / 512 bytes I/O size (minimum/optimal): 512 bytes / 512 bytes Disk label type: dos Disk identifier: 0xe6e0612d Device Boot Start End Blocks Id System /dev/sdc1 2048 10487807 5242880 83 Linux /dev/sdc2 10487808 20973567 5242880 83 Linux /dev/sdc3 20973568 31457279 5241856 83 Linux Command (m for help): w The partition table has been altered! Calling ioctl() to re-read partition table. Syncing disks.
5. Check if three partitions have been created from the disk /dev/sdc.
[root@node1 ~]# ls /dev/sd* /dev/sda /dev/sda1 /dev/sda2 /dev/sda3 /dev/sdb /dev/sdb1 /dev/sdc /dev/sdc1 /dev/sdc2 /dev/sdc3 /dev/sdd
From the above output, we can see 3 partitions of 5G have been created from disk sdc.
6. Now we will create a single partition of 15GB from the disk /dev/sdd.
[root@node1 ~]# fdisk /dev/sdd Welcome to fdisk (util-linux 2.23.2). Changes will remain in memory only, until you decide to write them. Be careful before using the write command. Command (m for help): p Disk /dev/sdd: 16.1 GB, 16106127360 bytes, 31457280 sectors Units = sectors of 1 * 512 = 512 bytes Sector size (logical/physical): 512 bytes / 512 bytes I/O size (minimum/optimal): 512 bytes / 512 bytes Disk label type: dos Disk identifier: 0x8f77a9f2 Device Boot Start End Blocks Id System Command (m for help): n Partition type: p primary (0 primary, 0 extended, 4 free) e extended Select (default p): p Partition number (1-4, default 1): 1 First sector (2048-31457279, default 2048): ---> Press ENTER Using default value 2048 Last sector, +sectors or +size{K,M,G} (2048-31457279, default 31457279): ---> Press ENTER Using default value 31457279 Partition 1 of type Linux and of size 15 GiB is set Command (m for help): p Disk /dev/sdd: 16.1 GB, 16106127360 bytes, 31457280 sectors Units = sectors of 1 * 512 = 512 bytes Sector size (logical/physical): 512 bytes / 512 bytes I/O size (minimum/optimal): 512 bytes / 512 bytes Disk label type: dos Disk identifier: 0x8f77a9f2 Device Boot Start End Blocks Id System /dev/sdd1 2048 31457279 15727616 83 Linux Command (m for help): w The partition table has been altered! Calling ioctl() to re-read partition table. Syncing disks.
7. Let’s verify if the partition has been created from the disk /dev/sdd.
[root@node1 ~]# ls /dev/sd* /dev/sda /dev/sda1 /dev/sda2 /dev/sda3 /dev/sdb /dev/sdb1 /dev/sdc /dev/sdc1 /dev/sdc2 /dev/sdc3 /dev/sdd /dev/sdd1
Here 1 partition of 15GB has been created.
8. Now again run the fdisk command to view all the disk partitions in your Linux system:
[root@node1 ~]# fdisk -l Disk /dev/sdb: 10.7 GB, 10737418240 bytes, 20971520 sectors Units = sectors of 1 * 512 = 512 bytes Sector size (logical/physical): 512 bytes / 512 bytes I/O size (minimum/optimal): 512 bytes / 512 bytes Disk label type: dos Disk identifier: 0x94e57bd6 Device Boot Start End Blocks Id System /dev/sdb1 2048 20971519 10484736 83 Linux WARNING: fdisk GPT support is currently new, and therefore in an experimental phase. Use at your own discretion. Disk /dev/sda: 107.4 GB, 107374182400 bytes, 209715200 sectors Units = sectors of 1 * 512 = 512 bytes Sector size (logical/physical): 512 bytes / 512 bytes I/O size (minimum/optimal): 512 bytes / 512 bytes Disk label type: gpt Disk identifier: A5182436-2B43-4F97-B1A4-A03B862DC141 # Start End Size Type Name 1 2048 411647 200M EFI System EFI System Partition 2 411648 2508799 1G Microsoft basic 3 2508800 209713151 98.8G Linux LVM Disk /dev/sdd: 16.1 GB, 16106127360 bytes, 31457280 sectors Units = sectors of 1 * 512 = 512 bytes Sector size (logical/physical): 512 bytes / 512 bytes I/O size (minimum/optimal): 512 bytes / 512 bytes Disk label type: dos Disk identifier: 0x8f77a9f2 Device Boot Start End Blocks Id System /dev/sdd1 2048 31457279 15727616 83 Linux Disk /dev/sdc: 16.1 GB, 16106127360 bytes, 31457280 sectors Units = sectors of 1 * 512 = 512 bytes Sector size (logical/physical): 512 bytes / 512 bytes I/O size (minimum/optimal): 512 bytes / 512 bytes Disk label type: dos Disk identifier: 0xe6e0612d Device Boot Start End Blocks Id System /dev/sdc1 2048 10487807 5242880 83 Linux /dev/sdc2 10487808 20973567 5242880 83 Linux /dev/sdc3 20973568 31457279 5241856 83 Linux Disk /dev/mapper/ol-root: 53.7 GB, 53687091200 bytes, 104857600 sectors Units = sectors of 1 * 512 = 512 bytes Sector size (logical/physical): 512 bytes / 512 bytes I/O size (minimum/optimal): 512 bytes / 512 bytes Disk /dev/mapper/ol-swap: 8455 MB, 8455716864 bytes, 16515072 sectors Units = sectors of 1 * 512 = 512 bytes Sector size (logical/physical): 512 bytes / 512 bytes I/O size (minimum/optimal): 512 bytes / 512 bytes Disk /dev/mapper/ol-home: 43.9 GB, 43939528704 bytes, 85819392 sectors Units = sectors of 1 * 512 = 512 bytes Sector size (logical/physical): 512 bytes / 512 bytes I/O size (minimum/optimal): 512 bytes / 512 bytes
9. If you are creating the partitions on a RAC environment then crosscheck the other nodes:
[root@node2 ~]# fdisk -l Disk /dev/sdb: 10.7 GB, 10737418240 bytes, 20971520 sectors Units = sectors of 1 * 512 = 512 bytes Sector size (logical/physical): 512 bytes / 512 bytes I/O size (minimum/optimal): 512 bytes / 512 bytes Disk label type: dos Disk identifier: 0x1f4bc0d2 Device Boot Start End Blocks Id System /dev/sdb1 2048 20971519 10484736 83 Linux Disk /dev/sdc: 16.1 GB, 16106127360 bytes, 31457280 sectors Units = sectors of 1 * 512 = 512 bytes Sector size (logical/physical): 512 bytes / 512 bytes I/O size (minimum/optimal): 512 bytes / 512 bytes Disk label type: dos Disk identifier: 0xd353d1aa Device Boot Start End Blocks Id System /dev/sdc1 2048 10487807 5242880 83 Linux /dev/sdc2 10487808 20973567 5242880 83 Linux /dev/sdc3 20973568 31457279 5241856 83 Linux WARNING: fdisk GPT support is currently new, and therefore in an experimental phase. Use at your own discretion. Disk /dev/sda: 107.4 GB, 107374182400 bytes, 209715200 sectors Units = sectors of 1 * 512 = 512 bytes Sector size (logical/physical): 512 bytes / 512 bytes I/O size (minimum/optimal): 512 bytes / 512 bytes Disk label type: gpt Disk identifier: A5182436-2B43-4F97-B1A4-A03B862DC141 # Start End Size Type Name 1 2048 411647 200M EFI System EFI System Partition 2 411648 2508799 1G Microsoft basic 3 2508800 209713151 98.8G Linux LVM Disk /dev/sdd: 16.1 GB, 16106127360 bytes, 31457280 sectors Units = sectors of 1 * 512 = 512 bytes Sector size (logical/physical): 512 bytes / 512 bytes I/O size (minimum/optimal): 512 bytes / 512 bytes Disk label type: dos Disk identifier: 0xcb407f62 Device Boot Start End Blocks Id System /dev/sdd1 2048 31457279 15727616 83 Linux Disk /dev/mapper/ol-root: 53.7 GB, 53687091200 bytes, 104857600 sectors Units = sectors of 1 * 512 = 512 bytes Sector size (logical/physical): 512 bytes / 512 bytes I/O size (minimum/optimal): 512 bytes / 512 bytes Disk /dev/mapper/ol-swap: 8455 MB, 8455716864 bytes, 16515072 sectors Units = sectors of 1 * 512 = 512 bytes Sector size (logical/physical): 512 bytes / 512 bytes I/O size (minimum/optimal): 512 bytes / 512 bytes Disk /dev/mapper/ol-home: 43.9 GB, 43939528704 bytes, 85819392 sectors Units = sectors of 1 * 512 = 512 bytes Sector size (logical/physical): 512 bytes / 512 bytes I/O size (minimum/optimal): 512 bytes / 512 bytes
Hope this article helped you to create partition in Linux system. If you want to create ASM disk from this partition then go through my other article Create ASM disk in Linux.
Pingback: Oracle 19c RAC installation in Linux: Easy Guide
Pingback: How to create ASM disk on Linux: Easy Step-by-step guide
Pingback: Create shared disk in VirtualBox: Easy step-by-step Guide