HowTo Create A GPT Disk With EFI System And exFAT Partitions Using Parted
Overview
The purpose of this article is to create a disk that can be read / written to by all major operating systems (i.e., macOS, Windows and Linux). A removable USB storage device containing SSD SATA or NVMe media formatted with an exFAT partition can be used to accomplish this. At the time of this writing, January 02, 2020, a removable USB-C drive containing a CORSAIR FORCE Series MP500 120GB NVMe storage device will be demonstrated.
The USB drive is attached to an NST system as device: "/dev/sdc". The parted disk utility will be used to create the GUID Partition Table (GPT) disk label, the EFI System Partition and the exFAT partition.
The following diagram is an example GUID Partition Table layout:
Zero Out Previous Disk Label - Optional
This optional step will zero out any previous disk label. We will use the dcfldd utility. The first 1GB of the disk will be zeroed out:
[root@shopper2 ~]# dcfldd if=/dev/zero of=/dev/sdc statusinterval=64 bs=1M count=1k; 1024 blocks (1024Mb) written. 1024+0 records in 1024+0 records out [root@shopper2 ~]#
We can now used parted to examine the disk and see that we are starting out with an "unrecognized" disk structure:
[root@shopper2 ~]# /sbin/parted -s /dev/sdc print; Error: /dev/sdc: unrecognised disk label Model: JM583 (scsi) Disk /dev/sdc: 120GB Sector size (logical/physical): 512B/512B Partition Table: unknown Disk Flags: [root@shopper2 ~]#