diff options
Diffstat (limited to 'man/systemd-makefs@.service.xml')
-rw-r--r-- | man/systemd-makefs@.service.xml | 103 |
1 files changed, 103 insertions, 0 deletions
diff --git a/man/systemd-makefs@.service.xml b/man/systemd-makefs@.service.xml new file mode 100644 index 0000000..51409ba --- /dev/null +++ b/man/systemd-makefs@.service.xml @@ -0,0 +1,103 @@ +<?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.readthedocs.io/en/latest/btrfs-man5.html'>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.readthedocs.io/en/latest/btrfs-man5.html'>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='url'><refentrytitle url='https://btrfs.readthedocs.io/en/latest/mkfs.btrfs.html'>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> |