Partition
A partition is a means of splitting a block device up to sub-regions. It allows creating a more manageable and adaptive "logical" structure visible to the system. The PARTUUID (partition UUID) can be seen using blkid.
See the Handbook for more information on partitioning for Gentoo.
The software presented in the following sections sometimes supports more partition table types than listed. For example, fdisk also supports Sun, SGI and BSD partition tables.
Master Boot Record (MBR)
Used for a long time to organize data, also called DOS-Partitions. Partition information is stored in the first 512 bytes of the device.
- Widespread and supported in nearly all operating systems.
- Very well documented.
- Maximum of 4 primary partitions per device.
- Maximum size of the device 2 TiB.
- Using one primary partition as an extended partition, it is possible to create additional logical partitions to work around the problem of only 4 primary partitions.
Kernel configuration
-*- Enable the block layer
Partition Types --->
[*] PC BIOS (MSDOS partition tables) support
Available software
The following programs can be used to create, alter, and remove MBR partitions:
Program | Package | GUI | Function |
---|---|---|---|
cfdisk | sys-apps/util-linux | No | Create, alter, and remove partitions. More intuitive interface than fdisk. |
fdisk | sys-apps/util-linux | No | Create, alter, and remove partitions. |
gparted | sys-block/gparted | GTK3 | GNOME Partition Editor; create, alter, and remove partitions. |
parted | sys-block/parted | No | Create, alter, remove, check, copy partitions and file systems. |
partitionmanager | sys-block/partitionmanager | Qt5 | KDE Partition Manager; create, alter, and remove partitions. |
sfdisk | sys-apps/util-linux | No | Non-interactive version of fdisk. |
Supported operating systems
- BSD (Mac OS X) - full support.
- DOS - full support.
- Linux - full support.
- Solaris - full support.
- Windows - full support.
GUID Partition Table (GPT)
In GUID (Global Unique IDentifier) partition system, a small amount of disk space at the beginning of the device is used to store the partition information. Its main advantage is the supported size of storage devices and the creation of a backup of the partition table at the end of the device.
- Widespread and supported in most modern operating systems.
- Maximum of 128 primary partitions per device.
- Maximum size of the device 8 ZiB.
GPT
Kernel configuration
-*- Enable the block layer
Partition Types --->
[*] EFI GUID Partition support
Available software
The following programs can be used to create, alter, and remove GPT partitions:
Program | Package | GUI | Function |
---|---|---|---|
cfdisk | sys-apps/util-linux | No | Create, alter, and remove partitions. More intuitive interface than fdisk. |
fdisk | sys-apps/util-linux | No | Create, alter, and remove partitions. |
GNOME Disks | sys-apps/gnome-disk-utility | GTK3 | GNOME partition manager. |
gparted | sys-block/gparted | GTK3 | GNOME Partition Editor; create, alter, and remove partitions. |
gptfdisk | sys-apps/gptfdisk | No | Create, alter, remove, convert MBR to GPT, and recreate partition tables from backup. |
parted | sys-block/parted | No | Create, alter, remove, check, copy partitions and file systems. |
partitionmanager | sys-block/partitionmanager | Qt5 | KDE Partition Manager; create, alter, and remove partitions. |
sfdisk | sys-apps/util-linux | No | Non-interactive version of fdisk. |
Supported operating systems
- BSD (Mac OS X) - full support.
- Linux - full support.
- Windows - Installs into the /boot/EFI/Microsoft/ subdirectory of the ESP.
Logical Volume Manager (LVM)
LVM is a complete suite to dynamically manage partitions, storage devices or other underlying systems as volumes.
- Widespread and supported in most modern operating systems.
- Maximum size of the device depends on the underlying systems limitations.
- Maximum size of Logical Volumes is 8 EiB on 64-bit Linux and 16 TiB on 32-bit Linux.
- Storage devices, RAID system, network storage (e.g. iSCSI) can be used as Physical Volumes (no need of partitioning).
- Provides basic forms of data redundancy (RAID 1, RAID 5) or stripset (RAID 0) for performance.
To use features like dynamic resizing, the used filesystem should be resizable as well.
Kernel configuration
Device Drivers --->
Multiple devices driver support (RAID and LVM) --->
<*> Device mapper support
<*> Crypt target support
<*> Snapshot target
<*> Thin provisioning target
<*> Mirror target
<*> Multipath target
<*> I/O Path Selector based on the number of in-flight I/Os
<*> I/O Path Selector based on the service time
Available software
The following programs come with sys-fs/lvm2
Program | GUI | Function |
---|---|---|
lvcreate | No | Create, alter, and remove volumes. |
pvcreate | No | Create or remove Physical Volumes of storage devices/systems. |
vgcreate | No | Groups PV as Volume Group. |
The following programs can be used to create, alter, and remove LVM partitions:
Program | Package | GUI | Function |
---|---|---|---|
partitionmanager | sys-block/partitionmanager | Qt5 | KDE Partition Manager; create, alter, and remove LVM PVs, VGs, LVs. |
Supported operating systems
- BSD - cannot boot itself, needs Linux GRUB with dual boot.
- Linux - full support.
This is the Linux specific LVM implementation, other OS have their own systems, see Logical volume management.
ZFS
ZFS is a complete suite to dynamically manage storage and filesystem.
- Support in Linux (via ZFSOnLinux[1]), Solaris, FreeBSD.
- Needs GRUB bootloader.
- Maximum size of a single zpool is 256 ZiB
- Storage devices can be used complete as vdev (no need of partitioning)
- Zpools are created once and cannot be resized afterwards. Every volume has access to the full capacity of the zpool, this can be reduced via quota.
- It provides forms of redundancy like RAID 1 (mirroring), and RAID 0 (striping) for performance. Also supports RAID 5, RAID 6, etc.
- Has its own filesystem with features like compression, copy-on-write, and deduplication.
Available software
The following programs come with sys-fs/zfs:
Program | GUI | Function |
---|---|---|
zfs | No | Create, alter (resize), and remove volumes. |
zpool | No | Manage and organize vdevs in zpools. |
Supported operating systems
- BSD - full support.
- Linux - built as external module because of the CDDL and GPL license conflict - mostly supported.
- Solaris - full support.
Other software
Busybox also contains a version of fdisk.
There are some special versions of fdisk for specific system types in the Gentoo ebuild repository, such as: sys-fs/arm-fdisk, sys-fs/mac-fdisk, or sys-fs/atari-fdisk.
See sys-fs category for even more tools.
See also
- Complete Handbook/Putting the minimal environment in place
- Filesystem/Security — one of the basic means to harden a system.
- GPT — a partitioning scheme widely adopted in contemporary computers to organize and manage data on storage devices.
- Master Boot Record — the de facto standard boot sector of an IBM PC compatible with BIOS as its system firmware.
- Handbook:AMD64/Installation/Disks