ArchWiki / Systemd-repart
ArchWiki / Systemd-repart
ja:Systemd-repart systemd-repart(8) is a tool for manipulating GUID Partition Tables (GPTs).
Installation
systemd-repart is part of systemd. It is also present on the Arch Linux installation ISO.
Usage
During Arch Linux Installation
systemd-repart can be used to create the necessary partitions during the Arch Linux installation process. Follow the steps below to set up your partitions.
First, create the required repart.d(5) configuration files. The following examples illustrate how to define partitions; adjust the parameters as needed for your specific setup.
Create the directory for the repart configuration files:
# mkdir /etc/repart.dThen, create the configuration files for each partition:
[Partition]
Type=esp
SizeMinBytes=1G
SizeMaxBytes=1G
Format=vfat/etc/repart.d/00-esp.conf[Partition]
Type=root
SizeMinBytes=23G
Encrypt=tpm2
Format=btrfs/etc/repart.d/10-root.conf[Partition]
Type=swap
SizeMinBytes=4G
SizeMaxBytes=4G
Encrypt=tpm2/etc/repart.d/30-swap.conf[Partition]
Type=home
Format=btrfs/etc/repart.d/50-home.confThe Encrypt=tpm2 option requires a compatible TPM (Trusted Platform Module) to be present on your system. If you do not have a TPM, you may omit this option or use a different encryption method.
After creating the configuration files, you can check the proposed changes by running:
# systemd-repart --empty=allow /dev/diskUsing --empty=allow automatically creates a GPT partition table if it does not exist. See systemd-repart(8).
If the output meets your expectations, you can apply the changes by executing:
# systemd-repart --dry-run=no --empty=allow /dev/diskThis command will create the partitions as specified in your configuration files, and automatically encrypt and/or format them if required. Ensure that you have backed up any important data before proceeding, as this operation may overwrite existing data on the specified disk.
For more advanced configurations, refer to repart.d(5).
Then, mount the required partitions and proceed with the rest of the installation:
# cryptsetup open /dev/disk/by-partlabel/root-x86-64 root
# mount /dev/mapper/root /mnt
# mount -m /dev/disk/by-partlabel/esp /mnt/bootIn the example above, none of the partitions require any entry in fstab or crypttab, they will automatically be decrypted and mounted if using systemd#GPT partition automounting. The swap partition will also be automatically configured (i.e. no need to run mkswap on it).