2012-06-27 02:37:36 +04:00
<?xml version="1.0"?>
<!-- * - nxml - * -->
2019-03-14 16:40:58 +03:00
< !DOCTYPE refentry PUBLIC "-//OASIS//DTD DocBook XML V4.5//EN"
"http://www.oasis-open.org/docbook/xml/4.2/docbookx.dtd">
2020-11-09 07:23:58 +03:00
<!-- SPDX - License - Identifier: LGPL - 2.1 - or - later -->
2012-06-27 02:37:36 +04:00
<refentry id= "systemd-fsck@.service" >
2015-02-04 05:14:13 +03:00
<refentryinfo >
<title > systemd-fsck@.service</title>
<productname > systemd</productname>
</refentryinfo>
<refmeta >
<refentrytitle > systemd-fsck@.service</refentrytitle>
<manvolnum > 8</manvolnum>
</refmeta>
<refnamediv >
<refname > systemd-fsck@.service</refname>
<refname > systemd-fsck-root.service</refname>
<refname > systemd-fsck</refname>
<refpurpose > File system checker logic</refpurpose>
</refnamediv>
<refsynopsisdiv >
<para > <filename > systemd-fsck@.service</filename> </para>
<para > <filename > systemd-fsck-root.service</filename> </para>
2015-06-18 20:47:44 +03:00
<para > <filename > /usr/lib/systemd/systemd-fsck</filename> </para>
2015-02-04 05:14:13 +03:00
</refsynopsisdiv>
<refsect1 >
<title > Description</title>
<para > <filename > systemd-fsck@.service</filename> and
<filename > systemd-fsck-root.service</filename> are services
responsible for file system checks. They are instantiated for each
device that is configured for file system checking.
<filename > systemd-fsck-root.service</filename> is responsible for
2015-08-02 23:22:15 +03:00
file system checks on the root file system, but only if the
2015-10-26 17:45:12 +03:00
root filesystem was not checked in the initramfs.
2015-02-04 05:14:13 +03:00
<filename > systemd-fsck@.service</filename> is used for all other
file systems and for the root file system in the initramfs.</para>
2014-08-03 09:11:37 +04:00
<para > These services are started at boot if
2015-02-04 05:14:13 +03:00
<option > passno</option> in <filename > /etc/fstab</filename> for the
file system is set to a value greater than zero. The file system
check for root is performed before the other file systems. Other
2014-08-03 09:11:37 +04:00
file systems may be checked in parallel, except when they are on
2015-02-04 05:14:13 +03:00
the same rotating disk.</para>
<para > <filename > systemd-fsck</filename> does not know any details
about specific filesystems, and simply executes file system
checkers specific to each filesystem type
2019-11-21 22:33:26 +03:00
(<filename > /sbin/fsck.<replaceable > type</replaceable> </filename> ). These checkers will decide if
2015-02-04 05:14:13 +03:00
the filesystem should actually be checked based on the time since
last check, number of mounts, unclean unmount, etc.</para>
2021-07-21 20:03:49 +03:00
<para > <filename > systemd-fsck-root.service</filename> will activate
<filename > reboot.target</filename> if <filename > /sbin/fsck</filename>
returns the "System should reboot" condition, or
<filename > emergency.target</filename> if <filename > /sbin/fsck</filename>
returns the "Filesystem errors left uncorrected" condition.</para>
<para > <filename > systemd-fsck@.service</filename> will fail if
<filename > /sbin/fsck</filename> returns with either "System should reboot"
or "Filesystem errors left uncorrected" conditions. For filesystems
listed in <filename > /etc/fstab</filename> without <literal > nofail</literal>
or <literal > noauto</literal> options, <literal > local-fs.target</literal>
will then activate <filename > emergency.target</filename> .</para>
2015-02-04 05:14:13 +03:00
</refsect1>
<refsect1 >
<title > Kernel Command Line</title>
2016-12-25 14:14:00 +03:00
<para > <filename > systemd-fsck</filename> understands these kernel
command line parameters:</para>
2015-02-04 05:14:13 +03:00
<variablelist class= 'kernel-commandline-options' >
<varlistentry >
<term > <varname > fsck.mode=</varname> </term>
<listitem > <para > One of <literal > auto</literal> ,
<literal > force</literal> , <literal > skip</literal> . Controls
the mode of operation. The default is <literal > auto</literal> ,
and ensures that file system checks are done when the file
system checker deems them necessary. <literal > force</literal>
unconditionally results in full file system checks.
<literal > skip</literal> skips any file system
checks.</para> </listitem>
</varlistentry>
<varlistentry >
<term > <varname > fsck.repair=</varname> </term>
<listitem > <para > One of <literal > preen</literal> ,
<literal > yes</literal> , <literal > no</literal> . Controls the
2016-12-25 14:14:00 +03:00
mode of operation. The default is <literal > preen</literal> ,
2015-02-04 05:14:13 +03:00
and will automatically repair problems that can be safely
2016-12-25 14:14:00 +03:00
fixed. <literal > yes</literal> will answer yes to all
2015-02-04 05:14:13 +03:00
questions by fsck and <literal > no</literal> will answer no to
all questions. </para> </listitem>
</varlistentry>
</variablelist>
</refsect1>
<refsect1 >
<title > See Also</title>
<para >
<citerefentry > <refentrytitle > systemd</refentrytitle> <manvolnum > 1</manvolnum> </citerefentry> ,
2015-01-26 19:34:59 +03:00
<citerefentry project= 'man-pages' > <refentrytitle > fsck</refentrytitle> <manvolnum > 8</manvolnum> </citerefentry> ,
2015-02-04 05:14:13 +03:00
<citerefentry > <refentrytitle > systemd-quotacheck.service</refentrytitle> <manvolnum > 8</manvolnum> </citerefentry> ,
2015-01-26 19:34:59 +03:00
<citerefentry project= 'man-pages' > <refentrytitle > fsck.btrfs</refentrytitle> <manvolnum > 8</manvolnum> </citerefentry> ,
<citerefentry project= 'man-pages' > <refentrytitle > fsck.cramfs</refentrytitle> <manvolnum > 8</manvolnum> </citerefentry> ,
<citerefentry project= 'man-pages' > <refentrytitle > fsck.ext4</refentrytitle> <manvolnum > 8</manvolnum> </citerefentry> ,
<citerefentry project= 'man-pages' > <refentrytitle > fsck.fat</refentrytitle> <manvolnum > 8</manvolnum> </citerefentry> ,
<citerefentry project= 'man-pages' > <refentrytitle > fsck.hfsplus</refentrytitle> <manvolnum > 8</manvolnum> </citerefentry> ,
<citerefentry project= 'man-pages' > <refentrytitle > fsck.minix</refentrytitle> <manvolnum > 8</manvolnum> </citerefentry> ,
<citerefentry project= 'man-pages' > <refentrytitle > fsck.ntfs</refentrytitle> <manvolnum > 8</manvolnum> </citerefentry> ,
<citerefentry project= 'man-pages' > <refentrytitle > fsck.xfs</refentrytitle> <manvolnum > 8</manvolnum> </citerefentry>
2015-02-04 05:14:13 +03:00
</para>
</refsect1>
2012-06-27 02:37:36 +04:00
</refentry>