<?xml version="1.0"?>
<!--*-nxml-*-->
<!DOCTYPE refentry PUBLIC "-//OASIS//DTD DocBook XML V4.5//EN"
  "http://www.oasis-open.org/docbook/xml/4.2/docbookx.dtd">
<!-- SPDX-License-Identifier: LGPL-2.1-or-later -->
<refentry id="systemd-makefs@.service">

  <refentryinfo>
    <title>systemd-makefs@.service</title>
    <productname>systemd</productname>
  </refentryinfo>

  <refmeta>
    <refentrytitle>systemd-makefs@.service</refentrytitle>
    <manvolnum>8</manvolnum>
  </refmeta>

  <refnamediv>
    <refname>systemd-makefs@.service</refname>
    <refname>systemd-mkswap@.service</refname>
    <refname>systemd-growfs@.service</refname>
    <refname>systemd-growfs-root.service</refname>
    <refname>systemd-makefs</refname>
    <refname>systemd-growfs</refname>
    <refpurpose>Creating and growing file systems on demand</refpurpose>
  </refnamediv>

  <refsynopsisdiv>
    <para><filename>systemd-makefs@<replaceable>device</replaceable>.service</filename></para>
    <para><filename>systemd-mkswap@<replaceable>device</replaceable>.service</filename></para>
    <para><filename>systemd-growfs@<replaceable>mountpoint</replaceable>.service</filename></para>
    <para><filename>systemd-growfs-root.service</filename></para>
    <para><filename>/usr/lib/systemd/systemd-makefs</filename></para>
    <para><filename>/usr/lib/systemd/systemd-growfs</filename></para>
  </refsynopsisdiv>

  <refsect1>
    <title>Description</title>

    <para><filename>systemd-makefs@.service</filename>,
    <filename>systemd-mkswap@.service</filename>,
    <filename>systemd-growfs@.service</filename>, and
    <filename>systemd-growfs-root.service</filename> are used to implement the
    <option>x-systemd.makefs</option> and <option>x-systemd.growfs</option> options
    in <citerefentry project='man-pages'><refentrytitle>fstab</refentrytitle><manvolnum>5</manvolnum></citerefentry>,
    see <citerefentry><refentrytitle>systemd.mount</refentrytitle><manvolnum>5</manvolnum></citerefentry>.
    They are instantiated for each device for which the file system or swap structure
    needs to be initialized, and for each mount point where the file system needs to
    be grown.</para>

    <para>These services are started at boot, either right before or right after the
    mount point or swap device are used.</para>

    <para><filename>systemd-makefs</filename> knows very little about specific file
    systems and swap devices, and after checking that the block device does not already
    contain a file system or other content, it will execute binaries specific to
    each filesystem type (<filename>/sbin/mkfs.<replaceable>type</replaceable></filename>
    or <filename>/sbin/mkswap</filename>). For certain file system types (currently
    ext2/ext3/<citerefentry project='man-pages'><refentrytitle>ext4</refentrytitle><manvolnum>5</manvolnum></citerefentry>,
    <citerefentry project='url'><refentrytitle url='https://btrfs.wiki.kernel.org/index.php/Manpage/btrfs(5)'>btrfs</refentrytitle><manvolnum>5</manvolnum></citerefentry>,
    <citerefentry project='man-pages'><refentrytitle>xfs</refentrytitle><manvolnum>5</manvolnum></citerefentry>,
    f2fs, vfat) and for swap devices, it will configure reasonable defaults and set
    the file system label and UUID based on the device name.</para>

    <para><filename>systemd-growfs</filename> knows very little about specific file
    systems and swap devices, and will instruct the kernel to grow the mounted
    filesystem to full size of the underlying block device. Nevertheless, it needs
    to know the
    <citerefentry project='man-pages'><refentrytitle>ioctl</refentrytitle><manvolnum>2</manvolnum></citerefentry>
    number specific to each file system, so only certain types are supported.
    Currently:
    <citerefentry project='man-pages'><refentrytitle>ext4</refentrytitle><manvolnum>5</manvolnum></citerefentry>,
    <citerefentry project='url'><refentrytitle url='https://btrfs.wiki.kernel.org/index.php/Manpage/btrfs(5)'>btrfs</refentrytitle><manvolnum>5</manvolnum></citerefentry>,
    <citerefentry project='man-pages'><refentrytitle>xfs</refentrytitle><manvolnum>5</manvolnum></citerefentry>,
    <!-- yes, that's what the man page is called. -->
    and dm-crypt partitions (see
    <citerefentry project='die-net'><refentrytitle>cryptsetup</refentrytitle><manvolnum>8</manvolnum></citerefentry>).
    </para>

    <para>If the creation of a file system or swap device fails, the mount point or
    swap is failed too. If the growing of a file system fails, a warning is emitted.
    </para>
  </refsect1>

  <refsect1>
    <title>See Also</title>
    <para>
      <citerefentry><refentrytitle>systemd</refentrytitle><manvolnum>1</manvolnum></citerefentry>,
      <citerefentry><refentrytitle>systemd.mount</refentrytitle><manvolnum>8</manvolnum></citerefentry>,
      <citerefentry><refentrytitle>systemd-fstab-generator</refentrytitle><manvolnum>8</manvolnum></citerefentry>,
      <citerefentry><refentrytitle>systemd-repart</refentrytitle><manvolnum>8</manvolnum></citerefentry>,
      <citerefentry project='man-pages'><refentrytitle>mkfs.btrfs</refentrytitle><manvolnum>8</manvolnum></citerefentry>,
      <citerefentry project='man-pages'><refentrytitle>mkfs.cramfs</refentrytitle><manvolnum>8</manvolnum></citerefentry>,
      <citerefentry project='man-pages'><refentrytitle>mkfs.ext4</refentrytitle><manvolnum>8</manvolnum></citerefentry>,
      <citerefentry project='man-pages'><refentrytitle>mkfs.fat</refentrytitle><manvolnum>8</manvolnum></citerefentry>,
      <citerefentry project='man-pages'><refentrytitle>mkfs.hfsplus</refentrytitle><manvolnum>8</manvolnum></citerefentry>,
      <citerefentry project='man-pages'><refentrytitle>mkfs.minix</refentrytitle><manvolnum>8</manvolnum></citerefentry>,
      <citerefentry project='man-pages'><refentrytitle>mkfs.ntfs</refentrytitle><manvolnum>8</manvolnum></citerefentry>,
      <citerefentry project='man-pages'><refentrytitle>mkfs.xfs</refentrytitle><manvolnum>8</manvolnum></citerefentry>
    </para>
  </refsect1>

</refentry>
