SYSTEMD-GPT-AUTO-GENERATOR(8)       SYSTEMD-GPT-AUTO-GENERATOR(8)

     NAME
          systemd-gpt-auto-generator - Generator for automatically
          discovering and mounting root, /home/, /srv/, /var/ and
          /var/tmp/ partitions, as well as discovering and enabling
          swap partitions, based on GPT partition type GUIDs

     SYNOPSIS
          /lib/systemd/system-generators/systemd-gpt-auto-generator

     DESCRIPTION
          systemd-gpt-auto-generator is a unit generator that
          automatically discovers root, /home/, /srv/, /var/,
          /var/tmp/, the EFI System Partition, the Extended Boot
          Loader Partition and swap partitions and creates mount and
          swap units for them, based on the partition type GUIDs of
          GUID partition tables (GPT), see m[blue]UEFI
          Specificationm[][1], chapter 5. It implements the
          m[blue]Discoverable Partitions Specificationm[][2]. Note
          that this generator has no effect on non-GPT systems, and on
          specific mount points that are directories already
          containing files. Also, on systems where the units are
          explicitly configured (for example, listed in fstab(5)), the
          units this generator creates are overridden, but additional
          implicit dependencies might be created.

          This generator will only look for the root partition on the
          same physical disk the EFI System Partition (ESP) is located
          on. Note that support from the boot loader is required: the
          EFI variable LoaderDevicePartUUID of the
          4a67b082-0a4c-41cf-b6c7-440b29bb8c4f vendor UUID is used to
          determine from which partition, and hence the disk from
          which the system was booted. If the boot loader does not set
          this variable, this generator will not be able to autodetect
          the root partition. See the m[blue]Boot Loader
          Interfacem[][3] for details.

          Similarly, this generator will only look for the other
          partitions on the same physical disk as the root partition.
          In this case, boot loader support is not required. These
          partitions will not be searched for on systems where the
          root file system is distributed on multiple disks, for
          example via btrfs RAID.

          systemd-gpt-auto-generator is useful for centralizing file
          system configuration in the partition table and making
          configuration in /etc/fstab or on the kernel command line
          unnecessary.

          This generator looks for the partitions based on their
          partition type GUID. The following partition type GUIDs are

     Page 1                     systemd 247          (printed 5/23/22)

     SYSTEMD-GPT-AUTO-GENERATOR(8)       SYSTEMD-GPT-AUTO-GENERATOR(8)

          identified:

          Table 1. Partition Type GUIDs allbox tab(:); lB lB lB lB.
          T{ Partition Type GUID T}:T{ Name T}:T{ Mount Point T}:T{
          Explanation T} l l l l l l l l l l l l l l l l l l l l l l l
          l l l l l l l l l l l l l l l l l l l l l l l l l l l l l l
          l l l.  T{ 44479540-f297-41b2-9af7-d131d5f0458a T}:T{ Root
          Partition (x86) T}:T{ / T}:T{ On 32-bit x86 systems, the
          first x86 root partition on the disk the EFI ESP is located
          on is mounted to the root directory /.  T} T{
          4f68bce3-e8cd-4db1-96e7-fbcaf984b709 T}:T{ Root Partition
          (x86-64) T}:T{ / T}:T{ On 64-bit x86 systems, the first
          x86-64 root partition on the disk the EFI ESP is located on
          is mounted to the root directory /.  T} T{
          69dad710-2ce4-4e3c-b16c-21a1d49abed3 T}:T{ Root Partition
          (32-bit ARM) T}:T{ / T}:T{ On 32-bit ARM systems, the first
          ARM root partition on the disk the EFI ESP is located on is
          mounted to the root directory /.  T} T{
          b921b045-1df0-41c3-af44-4c6f280d3fae T}:T{ Root Partition
          (64-bit ARM) T}:T{ / T}:T{ On 64-bit ARM systems, the first
          ARM root partition on the disk the EFI ESP is located on is
          mounted to the root directory /.  T} T{
          993d8d3d-f80e-4225-855a-9daf8ed7ea97 T}:T{ Root Partition
          (Itanium/IA-64) T}:T{ / T}:T{ On Itanium systems, the first
          Itanium root partition on the disk the EFI ESP is located on
          is mounted to the root directory /.  T} T{
          60d5a7fe-8e7d-435c-b714-3dd8162144e1 T}:T{ Root Partition
          (RISCV-V 32) T}:T{ / T}:T{ On RISC-V 32-bit systems, the
          first RISCV-V 32-bit root partition on the disk the EFI ESP
          is located on is mounted to the root directory /.  T} T{
          72ec70a6-cf74-40e6-bd49-4bda08e8f224 T}:T{ Root Partition
          (RISCV-V 64) T}:T{ / T}:T{ On RISC-V 64-bit systems, the
          first RISCV-V 64-bit root partition on the disk the EFI ESP
          is located on is mounted to the root directory /.  T} T{
          933ac7e1-2eb4-4f13-b844-0e14e2aef915 T}:T{ Home Partition
          T}:T{ /home/ T}:T{ The first home partition on the disk the
          root partition is located on is mounted to /home/.  T} T{
          3b8f8425-20e0-4f3b-907f-1a25a76f98e8 T}:T{ Server Data Par-
          tition T}:T{ /srv/ T}:T{ The first server data partition on
          the disk the root partition is located on is mounted to
          /srv/.  T} T{ 4d21b016-b534-45c2-a9fb-5c16e091fd2d T}:T{
          Variable Data Partition T}:T{ /var/ T}:T{ The first variable
          data partition on the disk the root partition is located on
          is mounted to /var/ - under the condition its partition UUID
          matches the first 128 bit of the HMAC-SHA256 of the GPT type
          uuid of this partition keyed by the machine ID of the
          installation stored in machine-id(5).  T} T{
          7ec6f557-3bc5-4aca-b293-16ef5df639d1 T}:T{ Temporary Data
          Partition T}:T{ /var/tmp/ T}:T{ The first temporary data
          partition on the disk the root partition is located on is
          mounted to /var/tmp/.  T} T{
          0657fd6d-a4ab-43c4-84e5-0933c84b4f4f T}:T{ Swap T}:T{ n/a

     Page 2                     systemd 247          (printed 5/23/22)

     SYSTEMD-GPT-AUTO-GENERATOR(8)       SYSTEMD-GPT-AUTO-GENERATOR(8)

          T}:T{ All swap partitions located on the disk the root par-
          tition is located on are enabled.  T} T{
          c12a7328-f81f-11d2-ba4b-00a0c93ec93b T}:T{ EFI System Parti-
          tion (ESP) T}:T{ /efi/ or /boot/ T}:T{ The first ESP located
          on the disk the root partition is located on is mounted to
          /boot/ or /efi/, see below.  T} T{
          bc13c2ff-59e6-4262-a352-b275fd6f7172 T}:T{ Extended Boot
          Loader Partition T}:T{ /boot/ T}:T{ The first Extended Boot
          Loader Partition is mounted to /boot/, see below.  T}

          This generator understands the following attribute flags for
          partitions:

          Table 2. Partition Attributes allbox tab(:); lB lB lB lB.
          T{ Name T}:T{ Value T}:T{ Applicable to T}:T{ Explanation T}
          l l l l l l l l l l l l.  T{ GPT_FLAG_READ_ONLY T}:T{
          0x1000000000000000 T}:T{ /, /home/, /srv/, /var/, /var/tmp/,
          Extended Boot Loader Partition T}:T{ Partition is mounted
          read-only T} T{ GPT_FLAG_NO_AUTO T}:T{ 0x8000000000000000
          T}:T{ /, /home/, /srv/, /var/, /var/tmp/, Extended Boot
          Loader Partition T}:T{ Partition is not mounted automati-
          cally T} T{ GPT_FLAG_NO_BLOCK_IO_PROTOCOL T}:T{
          0x0000000000000002 T}:T{ EFI System Partition (ESP) T}:T{
          Partition is not mounted automatically T}

          The /home/, /srv/, /var/ and /var/tmp/ partitions may be
          encrypted in LUKS format. In this case, a device mapper
          device is set up under the names /dev/mapper/home,
          /dev/mapper/srv, /dev/mapper/var and /dev/mapper/tmp. Note
          that this might create conflicts if the same partition is
          listed in /etc/crypttab with a different device mapper
          device name.

          When systemd is running in the initrd the / partition may be
          encrypted in LUKS format as well. In this case, a device
          mapper device is set up under the name /dev/mapper/root, and
          a sysroot.mount is set up that mounts the device under /sys-
          root. For more information, see bootup(7).

          Mount and automount units for the EFI System Partition (ESP)
          are generated on EFI systems. The ESP is mounted to /boot/
          (except if an Extended Boot Loader partition exists, see
          below), unless a mount point directory /efi/ exists, in
          which case it is mounted there. Since this generator creates
          an automount unit, the mount will only be activated
          on-demand, when accessed. On systems where /boot/ (or /efi/
          if it exists) is an explicitly configured mount (for exam-
          ple, listed in fstab(5)) or where the /boot/ (or /efi/)
          mount point is non-empty, no mount units are generated.

     Page 3                     systemd 247          (printed 5/23/22)

     SYSTEMD-GPT-AUTO-GENERATOR(8)       SYSTEMD-GPT-AUTO-GENERATOR(8)

          If the disk contains an Extended Boot Loader partition, as
          defined in the m[blue]Boot Loader Specificationm[][4], it is
          made available at /boot/ (by means of an automount point,
          similar to the ESP, see above). If both an EFI System Parti-
          tion and an Extended Boot Loader partition exist the latter
          is preferably mounted to /boot/. Make sure to create both
          /efi/ and /boot/ to ensure both partitions are mounted.

          When using this generator in conjunction with btrfs file
          systems, make sure to set the correct default subvolumes on
          them, using btrfs subvolume set-default.

          systemd-gpt-auto-generator implements systemd.generator(7).

     KERNEL COMMAND LINE
          systemd-gpt-auto-generator understands the following kernel
          command line parameters:

          systemd.gpt_auto, rd.systemd.gpt_auto
              Those options take an optional boolean argument, and
              default to yes. The generator is enabled by default, and
              a negative value may be used to disable it.

          root=
              When used with the special value "gpt-auto", automatic
              discovery of the root partition based on the GPT parti-
              tion type is enabled. Any other value disables this gen-
              erator.

          rw, ro
              Mount the root partition read-write or read-only ini-
              tially.

              Note that unlike most kernel command line options these
              settings do not override configuration in the file sys-
              tem, and the file system may be remounted later. See
              systemd-remount-fs.service(8).

     SEE ALSO
          systemd(1), systemd.mount(5), systemd.swap(5), systemd-
          fstab-generator(8), systemd-cryptsetup@.service(8),
          machine-id(5), cryptsetup(8), fstab(5), btrfs(8)

     NOTES
           1. UEFI Specification
              https://uefi.org/specifications

           2. Discoverable Partitions Specification
              https://systemd.io/DISCOVERABLE_PARTITIONS

           3. Boot Loader Interface
              https://systemd.io/BOOT_LOADER_INTERFACE

     Page 4                     systemd 247          (printed 5/23/22)

     SYSTEMD-GPT-AUTO-GENERATOR(8)       SYSTEMD-GPT-AUTO-GENERATOR(8)

           4. Boot Loader Specification
              https://systemd.io/BOOT_LOADER_SPECIFICATION

     Page 5                     systemd 247          (printed 5/23/22)