<!--*-nxml-*-->
<!DOCTYPE refentry PUBLIC "-//OASIS//DTD DocBook XML V4.2//EN" "http://www.oasis-open.org/docbook/xml/4.2/docbookx.dtd">
<!--
- This file is part of systemd.
+ SPDX-License-Identifier: LGPL-2.1+
Copyright 2013 Lennart Poettering
-
- systemd is free software; you can redistribute it and/or modify it
- under the terms of the GNU Lesser General Public License as published by
- the Free Software Foundation; either version 2.1 of the License, or
- (at your option) any later version.
-
- systemd is distributed in the hope that it will be useful, but
- WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- Lesser General Public License for more details.
-
- You should have received a copy of the GNU Lesser General Public License
- along with systemd; If not, see <http://www.gnu.org/licenses/>.
-->
<refentry id="systemd-gpt-auto-generator">
- <refentryinfo>
- <title>systemd-gpt-auto-generator</title>
- <productname>systemd</productname>
-
- <authorgroup>
- <author>
- <contrib>Developer</contrib>
- <firstname>Lennart</firstname>
- <surname>Poettering</surname>
- <email>lennart@poettering.net</email>
- </author>
- </authorgroup>
- </refentryinfo>
-
- <refmeta>
- <refentrytitle>systemd-gpt-auto-generator</refentrytitle>
- <manvolnum>8</manvolnum>
- </refmeta>
-
- <refnamediv>
- <refname>systemd-gpt-auto-generator</refname>
- <refpurpose>Generator for automatically discovering
- and mounting root, <filename>/home</filename> and
- <filename>/srv</filename> partitions, as well as
- discovering and enabling swap partitions, based on GPT
- partition type GUIDs.</refpurpose>
- </refnamediv>
-
- <refsynopsisdiv>
- <para><filename>/usr/lib/systemd/system-generators/systemd-gpt-auto-generator</filename></para>
- </refsynopsisdiv>
-
- <refsect1>
- <title>Description</title>
-
- <para><filename>systemd-gpt-auto-generator</filename>
- is a unit generator that automatically discovers root,
- <filename>/home</filename>, <filename>/srv</filename>
- and swap partitions and creates mount and swap units
- for them, based on the the partition type GUIDs of
- GUID partition tables (GPT). It implements the <ulink
- url="http://www.freedesktop.org/wiki/Specifications/DiscoverablePartitionsSpec/">Discoverable
- Partitions Specification</ulink>. Note that this
- generator has no effect on non-GPT systems, on systems
- where the units are explicitly configured (for
- example, listed in
- <citerefentry><refentrytitle>fstab</refentrytitle><manvolnum>5</manvolnum></citerefentry>),
- or where the mount points are non-empty.</para>
-
- <para>This generator will only look for root
- partitions on the same physical disk the EFI System
- Partition (ESP) is located on. It will only look for
- the other partitions on the same physical disk the
- root file system is located on. These partitions will
- not be search on systems where the root file system is
- distributed on multiple disks, for example via btrfs
- RAID.</para>
-
- <para><filename>systemd-gpt-auto-generator</filename>
- is useful for centralizing file system configuration
- in the partition table and making manual configuration
- in <filename>/etc/fstab</filename> or suchlike
- unnecessary.</para>
-
- <para>This generator looks for the partitions based on
- their partition type GUID. The following partition
- type GUIDs are identified:</para>
-
- <table>
- <title>Partition Type GUIDs</title>
- <tgroup cols='3' align='left' colsep='1' rowsep='1'>
- <colspec colname="guid" />
- <colspec colname="name" />
- <colspec colname="explanation" />
- <thead>
- <row>
- <entry>Partition Type GUID</entry>
- <entry>Name</entry>
- <entry>Explanation</entry>
- </row>
- </thead>
- <tbody>
- <row>
- <entry>44479540-f297-41b2-9af7-d131d5f0458a</entry>
- <entry><filename>Root Partition (x86)</filename></entry>
- <entry>On 32bit x86 systems the first x86 root partition on the disk the EFI ESP is located on is mounted to the root directory <filename>/</filename>.</entry>
- </row>
- <row>
- <entry>4f68bce3-e8cd-4db1-96e7-fbcaf984b709</entry>
- <entry><filename>Root Partition (x86-64)</filename></entry>
- <entry>On 64bit x86 systems the first x86-64 root partition on the disk the EFI ESP is located on is mounted to the root directory <filename>/</filename>.</entry>
- </row>
- <row>
- <entry>69dad710-2ce4-4e3c-b16c-21a1d49abed3</entry>
- <entry><filename>Root Partition (32bit ARM)</filename></entry>
- <entry>On 32bit ARM systems the first ARM root partition on the disk the EFI ESP is located on is mounted to the root directory <filename>/</filename>.</entry>
- </row>
- <row>
- <entry>b921b045-1df0-41c3-af44-4c6f280d3fae</entry>
- <entry><filename>Root Partition (64bit ARM)</filename></entry>
- <entry>On 64bit ARM systems the first ARM root partition on the disk the EFI ESP is located on is mounted to the root directory <filename>/</filename>.</entry>
- </row>
- <row>
- <entry>933ac7e1-2eb4-4f13-b844-0e14e2aef915</entry>
- <entry>Home Partition</entry>
- <entry>The first home partition on the disk the root partition is located on is mounted to <filename>/home</filename>.</entry>
- </row>
- <row>
- <entry>3b8f8425-20e0-4f3b-907f-1a25a76f98e8</entry>
- <entry>Server Data Partition</entry>
- <entry>The first server data partition on the disk the root partition is located on is mounted to <filename>/srv</filename>.</entry>
- </row>
- <row>
- <entry>0657fd6d-a4ab-43c4-84e5-0933c84b4f4f</entry>
- <entry>Swap</entry>
- <entry>All swap partitions located on the disk the root partition is located on are enabled.</entry>
- </row>
- </tbody>
- </tgroup>
- </table>
-
- <para>The <filename>/home</filename> and
- <filename>/srv</filename> partitions may be encrypted
- in LUKS format. In this case a device mapper device is
- set up under the names
- <filename>/dev/mapper/home</filename> and
- <filename>/dev/mapper/srv</filename>. Note that this
- might create conflicts if the same partition is listed
- in <filename>/etc/crypttab</filename> with a different
- device mapper device name.</para>
-
- <para>Also note that
- <citerefentry><refentrytitle>systemd-efi-boot-generator</refentrytitle><manvolnum>8</manvolnum></citerefentry>
- will mount the EFI System Partition (ESP) to
- <filename>/boot</filename> if not otherwise mounted.</para>
-
- <para>When using this generator in conjunction with
- btrfs file systems make sure to set the correct
- default subvolumes on them, using <command>btrfs
- subvolume set-default</command>.</para>
-
- <para><filename>systemd-gpt-auto-generator</filename>
- implements the <ulink
- url="http://www.freedesktop.org/wiki/Software/systemd/Generators">Generator
- Specification</ulink>.</para>
- </refsect1>
-
- <refsect1>
- <title>See Also</title>
- <para>
- <citerefentry><refentrytitle>systemd</refentrytitle><manvolnum>1</manvolnum></citerefentry>,
- <citerefentry><refentrytitle>systemd.mount</refentrytitle><manvolnum>5</manvolnum></citerefentry>,
- <citerefentry><refentrytitle>systemd.swap</refentrytitle><manvolnum>5</manvolnum></citerefentry>,
- <citerefentry><refentrytitle>systemd-fstab-generator</refentrytitle><manvolnum>8</manvolnum></citerefentry>,
- <citerefentry><refentrytitle>systemd-efi-boot-generator</refentrytitle><manvolnum>8</manvolnum></citerefentry>,
- <citerefentry><refentrytitle>systemd-cryptsetup@.service</refentrytitle><manvolnum>8</manvolnum></citerefentry>,
- <citerefentry><refentrytitle>cryptsetup</refentrytitle><manvolnum>8</manvolnum></citerefentry>,
- <citerefentry><refentrytitle>fstab</refentrytitle><manvolnum>5</manvolnum></citerefentry>,
- <citerefentry><refentrytitle>btrfs</refentrytitle><manvolnum>8</manvolnum></citerefentry>
- </para>
- </refsect1>
+ <refentryinfo>
+ <title>systemd-gpt-auto-generator</title>
+ <productname>systemd</productname>
+
+ <authorgroup>
+ <author>
+ <contrib>Developer</contrib>
+ <firstname>Lennart</firstname>
+ <surname>Poettering</surname>
+ <email>lennart@poettering.net</email>
+ </author>
+ </authorgroup>
+ </refentryinfo>
+
+ <refmeta>
+ <refentrytitle>systemd-gpt-auto-generator</refentrytitle>
+ <manvolnum>8</manvolnum>
+ </refmeta>
+
+ <refnamediv>
+ <refname>systemd-gpt-auto-generator</refname>
+ <refpurpose>Generator for automatically discovering
+ and mounting root, <filename>/home</filename> and
+ <filename>/srv</filename> partitions, as well as
+ discovering and enabling swap partitions, based on GPT
+ partition type GUIDs.</refpurpose>
+ </refnamediv>
+
+ <refsynopsisdiv>
+ <para><filename>/usr/lib/systemd/system-generators/systemd-gpt-auto-generator</filename></para>
+ </refsynopsisdiv>
+
+ <refsect1>
+ <title>Description</title>
+
+ <para><filename>systemd-gpt-auto-generator</filename> is a unit
+ generator that automatically discovers root,
+ <filename>/home</filename>, <filename>/srv</filename> and swap
+ partitions and creates mount and swap units for them, based on the
+ partition type GUIDs of GUID partition tables (GPT),
+ see <ulink url="http://www.uefi.org/specifications">UEFI Specification</ulink>, chapter 5.
+ It implements the <ulink
+ url="https://www.freedesktop.org/wiki/Specifications/DiscoverablePartitionsSpec/">Discoverable
+ Partitions Specification</ulink>. Note that this generator has no
+ effect on non-GPT systems, or where the directories under the
+ mount points are already non-empty. Also, on systems where the
+ units are explicitly configured (for example, listed in
+ <citerefentry
+ project='man-pages'><refentrytitle>fstab</refentrytitle><manvolnum>5</manvolnum></citerefentry>),
+ the units this generator creates are overridden, but additional
+ implicit dependencies might be created.</para>
+
+ <para>This generator will only look for root partitions on the
+ same physical disk the EFI System Partition (ESP) is located on.
+ It will only look for the other partitions on the same physical
+ disk the root file system is located on. These partitions will not
+ be searched for on systems where the root file system is distributed
+ on multiple disks, for example via btrfs RAID.</para>
+
+ <para><filename>systemd-gpt-auto-generator</filename> is useful
+ for centralizing file system configuration in the partition table
+ and making configuration in <filename>/etc/fstab</filename> unnecessary.
+ </para>
+
+ <para>This generator looks for the partitions based on their
+ partition type GUID. The following partition type GUIDs are
+ identified:</para>
+
+ <table>
+ <title>Partition Type GUIDs</title>
+ <tgroup cols='3' align='left' colsep='1' rowsep='1'>
+ <colspec colname="guid" />
+ <colspec colname="name" />
+ <colspec colname="explanation" />
+ <thead>
+ <row>
+ <entry>Partition Type GUID</entry>
+ <entry>Name</entry>
+ <entry>Explanation</entry>
+ </row>
+ </thead>
+ <tbody>
+ <row>
+ <entry>44479540-f297-41b2-9af7-d131d5f0458a</entry>
+ <entry><filename>Root Partition (x86)</filename></entry>
+ <entry>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 <filename>/</filename>.</entry>
+ </row>
+ <row>
+ <entry>4f68bce3-e8cd-4db1-96e7-fbcaf984b709</entry>
+ <entry><filename>Root Partition (x86-64)</filename></entry>
+ <entry>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 <filename>/</filename>.</entry>
+ </row>
+ <row>
+ <entry>69dad710-2ce4-4e3c-b16c-21a1d49abed3</entry>
+ <entry><filename>Root Partition (32-bit ARM)</filename></entry>
+ <entry>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 <filename>/</filename>.</entry>
+ </row>
+ <row>
+ <entry>b921b045-1df0-41c3-af44-4c6f280d3fae</entry>
+ <entry><filename>Root Partition (64-bit ARM)</filename></entry>
+ <entry>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 <filename>/</filename>.</entry>
+ </row>
+ <row>
+ <entry>993d8d3d-f80e-4225-855a-9daf8ed7ea97</entry>
+ <entry><filename>Root Partition (Itanium/IA-64)</filename></entry>
+ <entry>On Itanium systems, the first Itanium root partition on the disk the EFI ESP is located on is mounted to the root directory <filename>/</filename>.</entry>
+ </row>
+ <row>
+ <entry>933ac7e1-2eb4-4f13-b844-0e14e2aef915</entry>
+ <entry>Home Partition</entry>
+ <entry>The first home partition on the disk the root partition is located on is mounted to <filename>/home</filename>.</entry>
+ </row>
+ <row>
+ <entry>3b8f8425-20e0-4f3b-907f-1a25a76f98e8</entry>
+ <entry>Server Data Partition</entry>
+ <entry>The first server data partition on the disk the root partition is located on is mounted to <filename>/srv</filename>.</entry>
+ </row>
+ <row>
+ <entry>0657fd6d-a4ab-43c4-84e5-0933c84b4f4f</entry>
+ <entry>Swap</entry>
+ <entry>All swap partitions located on the disk the root partition is located on are enabled.</entry>
+ </row>
+ <row>
+ <entry>c12a7328-f81f-11d2-ba4b-00a0c93ec93b</entry>
+ <entry>EFI System Partition (ESP)</entry>
+ <entry>The first ESP located on the disk the root partition is located on is mounted to <filename>/boot</filename> or <filename>/efi</filename>, see below.</entry>
+ </row>
+ </tbody>
+ </tgroup>
+ </table>
+
+ <para>This generator understands the following attribute flags for partitions:</para>
+
+ <table>
+ <title>Partition Attributes</title>
+ <tgroup cols='4' align='left' colsep='1' rowsep='1'>
+ <colspec colname="attribute" />
+ <colspec colname="value" />
+ <colspec colname="where" />
+ <colspec colname="explanation" />
+ <thead>
+ <row>
+ <entry>Name</entry>
+ <entry>Value</entry>
+ <entry>Applicable to</entry>
+ <entry>Explanation</entry>
+ </row>
+ </thead>
+ <tbody>
+ <row>
+ <entry><constant>GPT_FLAG_READ_ONLY</constant></entry>
+ <entry>0x1000000000000000</entry>
+ <entry><filename>/</filename>, <filename>/srv</filename>, <filename>/home</filename></entry>
+ <entry>Partition is mounted read-only</entry>
+ </row>
+
+ <row>
+ <entry><constant>GPT_FLAG_NO_AUTO</constant></entry>
+ <entry>0x8000000000000000</entry>
+ <entry><filename>/</filename>, <filename>/srv</filename>, <filename>/home</filename></entry>
+ <entry>Partition is not mounted automatically</entry>
+ </row>
+
+ <row>
+ <entry><constant>GPT_FLAG_NO_BLOCK_IO_PROTOCOL</constant></entry>
+ <entry>0x0000000000000002</entry>
+ <entry>ESP</entry>
+ <entry>Partition is not mounted automatically</entry>
+ </row>
+ </tbody>
+ </tgroup>
+ </table>
+
+ <para>The <filename>/home</filename> and <filename>/srv</filename>
+ partitions may be encrypted in LUKS format. In this case, a device
+ mapper device is set up under the names
+ <filename>/dev/mapper/home</filename> and
+ <filename>/dev/mapper/srv</filename>. Note that this might create
+ conflicts if the same partition is listed in
+ <filename>/etc/crypttab</filename> with a different device mapper
+ device name.</para>
+
+ <para>Mount and automount units for the EFI System Partition (ESP) are generated on EFI systems. The ESP is mounted
+ to <filename>/boot</filename>, unless a mount point directory <filename>/efi</filename> 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 <filename>/boot</filename> (or <filename>/efi</filename> if it exists) is an explicitly
+ configured mount (for example, listed in <citerefentry
+ project='man-pages'><refentrytitle>fstab</refentrytitle><manvolnum>5</manvolnum></citerefentry>) or where the
+ <filename>/boot</filename> (or <filename>/efi</filename>) mount point is non-empty, no mount units are
+ generated.</para>
+
+ <para>When using this generator in conjunction with btrfs file
+ systems, make sure to set the correct default subvolumes on them,
+ using <command>btrfs subvolume set-default</command>.</para>
+
+ <para><filename>systemd-gpt-auto-generator</filename> implements
+ <citerefentry><refentrytitle>systemd.generator</refentrytitle><manvolnum>7</manvolnum></citerefentry>.</para>
+ </refsect1>
+
+ <refsect1>
+ <title>See Also</title>
+ <para>
+ <citerefentry><refentrytitle>systemd</refentrytitle><manvolnum>1</manvolnum></citerefentry>,
+ <citerefentry><refentrytitle>systemd.mount</refentrytitle><manvolnum>5</manvolnum></citerefentry>,
+ <citerefentry><refentrytitle>systemd.swap</refentrytitle><manvolnum>5</manvolnum></citerefentry>,
+ <citerefentry><refentrytitle>systemd-fstab-generator</refentrytitle><manvolnum>8</manvolnum></citerefentry>,
+ <citerefentry><refentrytitle>systemd-cryptsetup@.service</refentrytitle><manvolnum>8</manvolnum></citerefentry>,
+ <citerefentry project='die-net'><refentrytitle>cryptsetup</refentrytitle><manvolnum>8</manvolnum></citerefentry>,
+ <citerefentry project='man-pages'><refentrytitle>fstab</refentrytitle><manvolnum>5</manvolnum></citerefentry>,
+ <citerefentry project='man-pages'><refentrytitle>btrfs</refentrytitle><manvolnum>8</manvolnum></citerefentry>
+ </para>
+ </refsect1>
</refentry>