Eine Unit-Konfigurationsdatei, deren Name in
».mount« endet, kodiert Informationen über einen durch
Systemd gesteuerten und überwachten
Dateisystemeinhängepunkt.
Diese Handbuchseite führt die für diesen Unit-Typ
spezifischen Konfigurationsoptionen auf. Siehe systemd.unit(5)
für die gemeinsamen Optionen aller Unit-Konfigurationsdateien. Die
gemeinsamen Konfigurationseinträge werden in den generischen
Abschnitten [Unit] und [Install] konfiguriert. Die
Einhänge-spezifischen Konfigurationsoptionen werden in dem Abschnitt
[Mount] konfiguriert.
Zusätzliche Optionen sind in systemd.exec(5), das
die Ausführungsumgebung, in der das Programm mount(8)
ausgeführt wird und in systemd.kill(5), das die Art der
Beendigung des Prozesses definiert und in
systemd.resource-control(5), das die
Ressourcensteuerungseinstellungen für die Prozesse des Dienstes
konfiguriert, aufgeführt.
Beachten Sie, dass die Optionen User= und Group=
für Einhänge-Units nicht nützlich sind. Systemd
übergibt zwei Parameter an mount(8): den Wert von What=
und Where=. Beim Aufruf auf diese Art liest mount(8) keine
Optionen aus /etc/fstab und muss als UID 0 ausgeführt werden.
Einhänge-Units müssen nach dem Einhängepunkt,
den sie steuern, benannt sein. Beispiel: Der Einhängepunkt
/home/lennart muss in einer Unit-Datei home-lennart.mount konfiguriert
werden. Für Details über die Maskierungslogik, die zur
Umwandlung von Dateisystempfaden in einen Unit-Namen verwandt wird, siehe
systemd.unit(5). Beachten Sie, dass für Einhänge-Units
keine Vorlagen benutzt werden können und dass es auch nicht
möglich ist, mehrere Namen zu einer Einhänge-Unit
hinzuzufügen, indem auf sie zusätzliche Symlinks erstellt
werden.
Optional kann eine Einhänge-Unit von einer Automount-Unit
begleitet werden, um bedarfsgesteuertes oder paralleles Einhängen zu
ermöglichen. Siehe systemd.automount(5).
Zur Laufzeit (unabhängig von Unit-Dateien oder /etc/fstab)
erstellte Einhängepunkte werden von Systemd überwacht und
werden wie andere Einhänge-Units in Systemd auftauchen. Siehe die
Beschreibung von /proc/self/mountinfo in proc(5).
Einige Dateisysteme verfügen über besondere
Semantiken wie API-Dateisysteme für Kernel-zu-Anwendungsebene- und
Anwendungsebene-zu-Anwendungsebene-Schnittstellen. Einige können
nicht über Einhänge-Units geändert werden und
können nicht deaktiviert werden. Für eine längere
Diskussion siehe API-Dateisysteme[1].
Die folgenden Abhängigkeiten werden implizit
hinzugefügt:
•Falls eine Einhänge-Unit unterhalb einer
anderen Einhänge-Unit in der Dateisystemhierarchie ist, werden sowohl
eine Bedingungsabhängigkeit als auch eine Ordnungsabhängigkeit
zwischen beiden Units automatisch erstellt.
•Durch Blockgeräte hinterlegte Dateisysteme
erhalten automatische Abhängigkeiten vom Typ BindsTo= und
After= von der Geräte-Unit, die das Blockgerät kapselt
(siehe unten).
•Falls traditionelle Dateisystemquota für
einen Einhängepunkt aktiviert ist, werden automatisch
Abhängigkeiten Wants= und Before= von
systemd-quotacheck.service und quotaon.service hinzugefügt.
Die folgenden Abhängigkeiten werden hinzugefügt, es
sei denn, DefaultDependencies=no ist gesetzt:
•Alle Einhänge-Units erlangen automatische
Before= und Conflicts= von umount.target, um während des
Herunterfahren des Systems beendet zu werden.
•Einhänge-Units, die sich auf lokale
Dateisysteme beziehen, erhalten automatisch eine Abhängigkeit
After= von local-fs-pre.target und, sofern die Einhänge-Option
nofail nicht gesetzt ist, eine Abhängigkeit Before= von
local-fs.target.
•Netzwerk-Einhänge-Units erlangen
automatisch After=-Abhängigkeiten von remote-fs-pre.target,
network.target und network-online.target und, sofern die
Einhänge-Option nofail nicht gesetzt ist, eine
Abhängigkeit Before= von remote-fs.target. Hin zu dem letzteren
wird auch eine Wants=-Unit hinzugefügt.
Einhänge-Units, die sich auf lokale und
Netzwerk-Dateisysteme beziehen, werden durch ihre Dateisystemspezifikation
unterschieden. In einigen Fällen reicht dies nicht aus
(beispielsweise für Netzwerkblockgeräte-basierende
Einhängungen, wie iSCSI). In diesem Fällen kann _netdev
zu der Einhängeoptionszeichenkette der Unit hinzugefügt
werden, wodurch Systemd gezwungen wird, diese Einhänge-Unit als
Netzwerk-Einhängung zu betrachten.
Einhänge-Units können entweder über
Unit-Dateien oder mittels /etc/fstab (siehe fstab(5) für
Details) konfiguriert werden. In /etc/fstab aufgeführte
Einhängungen werden beim Systemstart oder wenn die Konfiguration des
Systemverwalters neu gestartet wird dynamisch in native Units umgewandelt.
Im Allgemeinen ist die Konfiguration der Einhängepunkte durch
/etc/fstab der bevorzugte Ansatz. Siehe systemd-fstab-generator(8)
für Details über die Umwandlung.
Die in nfs(5) dokumentierte NFS-Einhängeoption
bg für Hintergrundeinhängungen wird durch
systemd-fstab-generator erkannt und die Optionen werden umgewandelt,
so dass Systemd die Auftragssteuerungskonsequenzen dieser Option
erfüllt. Insbesondere agiert systemd-fstab-generator als ob
»x-systemd .mount-timeout=infinity,retry=10000« der
Optionsliste vorangestellt und »fg,nofail« ihr
angehängt worden wäre. Abhängig von den bestimmten
Anforderungen kann es geeignet sein, einige dieser Optionen explizit
bereitzustellen oder statt von »bg« von der unten
beschriebenen Option »x-systemd.automount« Gebrauch zu
machen.
Beim Lesen von /etc/fstab werden ein paar besondere
Einhängeoptionen durch Systemd verstanden, die beeinflussen, wie
für Einhängepunkte Abhängigkeiten erstellt werden.
Systemd wird Abhängigkeiten vom Typ Wants= oder
Requires (siehe die Option nofail unten) von entweder
local-fs.target oder remote-fs.target erstellen, abhängig davon, ob
das Dateisystem lokal oder fern ist.
x-systemd.requires=
Konfiguriert eine Abhängigkeit
Requires=
und
After= zwischen der erstellten Einhänge-Unit und einer
anderen Systemd-Unit, wie einer Geräte- oder Einhänge-Unit. Das
Argument sollte ein Unit-Name oder ein absoluter Pfad zu einem
Geräteknoten oder Einhängepunkt sein. Diese Option kann mehr als
einmal angegeben werden. Diese Option ist insbesondere für
Einhängepunkterklärungen nützlich, die die Existenz eines
zusätzlichen Gerätes benötigen (wie ein externes
Journal-Gerät für ein Journal-Dateisystem) oder das
Vorhandensein eines zusätzlichen Einhängepunktes (wie ein
Überlagerungsdateisystem, das mehrere Einhängepunkte
zusammenführt). Siehe
After= und
Requires= in
systemd.unit(5) für Details.
x-systemd.before=, x-systemd.after=
Konfiguriert eine Abhängigkeit
Before= oder
After= zwischen dem erstellten Einhängepunkt und einer anderen
Systemd-Unit, wie einem Einhängepunkt. Das Argument sollte ein
Unit-Name oder ein absoluter Pfad zu einem Einhängepunkt sein. Diese
Option kann mehr als einmal angegeben werden. Diese Option ist insbesondere
für Einhängepunkte nützlich, die mit der Option
nofail deklariert sind und asynchron eingehängt werden, aber vor
oder nach dem Starten einer Unit eingehängt sein müssen,
beispielsweise für local-fs.target unit. Siehe
Before= und
After= in
systemd.unit(5) für Details.
x-systemd.requires-mounts-for=
Konfiguriert eine Abhängigkeit
RequiresMountsFor= zwischen der erstellten Einhänge-Unit und
anderen Einhänge-Units. Das Argument muss ein absoluter Pfad sein.
Diese Option kann mehr als einmal angegeben werden. Siehe
RequiresMountsFor= in
systemd.unit(5) für Details.
x-systemd.device-bound
Das Blockgeräte-unterlegte Dateisystem wird auf
eine
BindsTo= aktualisiert. Diese Option ist beim manuellen
Einhängen von Dateisystemen mit
mount(8) nützlich, da die
Vorgabeabhängigkeit in diesem Falle
Requires= ist. Diese Option
ist durch Einträge in /etc/fstab oder durch Einhänge-Units
bereits impliziert.
x-systemd.automount
x-systemd.idle-timeout=
Konfiguriert die Leerlaufzeitüberschreitung
für Automount-Units. Siehe
TimeoutIdleSec= in
systemd.automount(5) für Details.
x-systemd.device-timeout=
Konfiguriert, wie lange Systemd auf das Auftauchen eines
Gerätes warten soll, bevor es bei einem Eintrag aus /etc/fstab aufgibt.
Festlegung einer Zeit in Sekunden oder explizite Anhängung einer
Einheit wie »s«, »min«, »h«,
»ms«.
Beachten Sie, dass diese Option nur in /etc/fstab genutzt werden
kann und ignoriert wird, falls sie Teil der Einstellungen Options= in
einer Unit-Datei ist.
x-systemd.mount-timeout=
Konfiguriert, wie lange Systemd auf das Beenden eines
Einhängebefehls warten soll, bevor es bei einem Eintrag aus /etc/fstab
aufgibt. Festlegung einer Zeit in Sekunden oder explizite Anhängung
einer Einheit wie »s«, »min«,
»h«,»ms«.
Beachten Sie, dass diese Option nur in /etc/fstab genutzt werden
kann und ignoriert wird, falls sie Teil der Einstellungen Options= in
einer Unit-Datei ist.
Siehe TimeoutSec= unten für Details.
x-systemd.makefs
Das Dateisystem wird auf dem Gerät initialisiert.
Falls das Gerät nicht »leer« ist, d.h. es eine Signatur
enthält, wird die Aktion übersprungen. Es wird daher erwartet,
dass diese Option erhalten bleibt, selbst nachdem das Gerät
initialisiert wurde.
Beachten Sie, dass diese Option nur in /etc/fstab genutzt werden
kann und ignoriert wird, falls sie Teil der Einstellungen Options= in
einer Unit-Datei ist.
Siehe systemd-makefs@.service(8).
wipefs(8) kann zum Entfernen jeglicher Signatur von einem
Blockgerät genutzt werden, um x-systemd.makefs zur
Reinitialisierung des Geräts zu zwingen.
x-systemd.growfs
Das Dateisystem wird vergrößert, um das
gesamte Blockgerät zu belegen. Falls das Dateisystem bereits bei
maximaler Größe ist, wird keine Aktion durchgeführt. Es
wird daher erwartet, dass diese Option erhalten bleibt, selbst nachdem das
Dateisystem vergrößert wurde. Nur bestimmte Dateisysteme werden
unterstützt, siehe
systemd-makefs@.service(8) für
Details.
Beachten Sie, dass diese Option nur in /etc/fstab genutzt werden
kann und ignoriert wird, falls sie Teil der Einstellungen Options= in
einer Unit-Datei ist.
_netdev
Normalerweise wird der Dateisystemtyp verwandt, um zu
bestimmen, ob eine Einhängung eine
»Netzeinhängung« ist, d.h. ob sie nach der
Verfügbarkeit des Netzes gestartet werden soll. Durch Verwendung dieser
Option wird diese Erkennung außer Kraft gesetzt und festgelegt, dass
diese Einhängung ein Netzwerk benötigt.
Netzeinhängungs-Units werden statt zwischen
local-fs-pre.target und local-fs.target zwischen remote-fs-pre.target und
remote-fs.target sortiert. Sie ziehen auch network-online.target herein und
werden danach und nach network.target angeordnet.
noauto, auto
Mit noauto wird die Einhänge-Unit nicht als
Abhängigkeit für local-fs.target oder remote-fs.target
hinzugefügt. Dies bedeutet, dass sie während des Systemstarts
nicht automatisch eingehängt wird, außer sie wird durch eine
andere Unit hereingezogen. Die Option auto hat den gegenteiligen Effekt
und ist die Vorgabe. Beachten Sie, dass die Option noauto nur einen
Effekt auf die Einhänge-Unit selbst hat — falls
x-systemd.automount verwandt wird (siehe oben), dann wird die passende
Automount-Unit weiterhin von diesen Zielen hereingezogen.
nofail
Mit nofail wird diese Einhängung durch
local-fs.target oder remote-fs.target nur erwünscht, nicht verlangt.
Desweiteren wird die Einhänge-Unit nicht vor diese Ziel-Units sortiert.
Das bedeutet, dass mit dem Systemstart fortgefahren wird, ohne auf die
Einhänge-Unit zu warten und unabhängig davon, ob der
Einhängepunkt erfolgreich eingehängt werden kann.
x-initrd.mount
Jedes in der Initramfs zusätzlich
einzuhängende Dateisystem. Siehe die Beschreibung initrd-fs.target in
systemd.special(7).
Falls ein Einhängepunkt sowohl in /etc/fstab und in einer
unter /usr gespeicherten Unit-Datei konfiguriert ist, wird erstere Vorrang
haben. Falls die Unit-Datei unter /etc gespeichert ist, wird sie Vorrang
haben. Das bedeutet: Native Unit-Dateien haben vor traditionellen
Konfigurationsdateien Vorrang, aber dies wird durch die Regel
verdrängt, dass Konfiguration in /etc immer Vorrang vor Konfiguration
in /usr hat.
Einhängedateien müssen einen Abschnitt [Mount]
enthalten, der Informationen über den
Dateisystemeinhängepunkt, den sie überwacht, transportiert.
Eine Reihe von Optionen, die in diesem Abschnitt verwandt werden
können, werden auch von anderen Unit-Typen verwandt. Diese Optionen
sind in systemd.exec(5) und systemd.kill(5) dokumentiert. Die
für den Abschnitt [Mount] von Einhänge-Units spezifischen
Optionen sind die folgenden:
What=
Akzeptiert einen absoluten Pfad zu einem
Geräteknoten, einer Datei oder einer anderen einzuhängenden
Ressource. Siehe
mount(8) für Details. Falls sich dies auf einen
Geräteknoten bezieht, wird eine Abhängigkeit auf die respektive
Geräte-Unit automatisch erstellt. (Siehe
systemd.device(5)
für weitere Informationen.) Diese Option ist verpflichtend. Beachten
Sie, dass die üblichen Angabeerweiterungen auf diese Einstellung
angewandt werden, wörtliche Prozentzeichen sollten daher als
»%%« geschrieben werden.
Where=
Akzeptiert einen absoluten Pfad eines Verzeichnisses
für einen Einhängepunkt; insbesondere kann das Ziel kein
symbolischer Link sein. Falls der Einhängepunkt zum Zeitpunkt des
Einhängens nicht existiert, wird er erstellt. Diese Zeichenkette muss
sich im Dateinamen der Unit widerspiegeln. (Siehe oben.) Diese Option ist
verpflichtend.
Type=
Akzeptiert eine Zeichenkette für den
Dateisystemtyp. Siehe
mount(8) für Details. Diese Einstellung
ist optional.
Options=
Beim Einhängen zu benutzende
Einhängeoptionen. Dies akzeptiert eine Kommata-getrennte Liste von
Optionen. Diese Einstellung ist optional. Beachten Sie, dass die
üblichen Angabeerweiterungen auf diese Einstellung angewandt werden,
wörtliche Prozentzeichen sollten daher als »%%«
geschrieben werden.
SloppyOptions=
Akzeptiert ein logisches Argument. Falls wahr, erfolgt
eine entspannte Auswertung der in
Options= festgelegten Optionen und
unbekannte Einhängeoptionen werden toleriert. Dies entspricht dem
Schalter
-s von
mount(8). Standardmäßig off.
LazyUnmount=
Akzeptiert ein logisches Argument. Falls wahr, wird das
Dateisystem aus der Dateisystemhierarchie zum Zeitpunkt der
Aushängeaktion abgehängt und alle Referenzen zu dem Dateisystem
werden bereinigt, sobald sie nicht mehr beschäftigt sind. Dies
entspricht dem Schalter
-l von
mount(8).
Standardmäßig off.
ForceUnmount=
Akzeptiert ein logisches Argument. Falls wahr, erzwingt
es ein Aushängen (im Falle nicht erreichbarer NFS-Systeme). Dies
entspricht dem Schalter
-f von
umount(8).
Standardmäßig off.
DirectoryMode=
Verzeichnisse von Einhängepunkten (und alle
Elternverzeichnisse) werden falls notwendig automatisch erzeugt. Diese Option
legt den bei der Erstellung der Verzeichnisse zu verwendenden
Dateisystemzugriffsmodus fest. Akzeptiert einen Zugriffsmodus in oktaler
Notation. Standardmäßig 0755.
TimeoutSec=
Konfiguriert die Zeit, die auf das Beenden des
Einhängebefehls gewartet wird. Falls ein Befehl sich nicht innerhalb
der konfigurierten Zeit beendet, wird die Einhängung als fehlgeschlagen
betrachtet und wieder heruntergefahren. Alle noch laufenden Befehle werden
zwangsweise mittels
SIGTERM und nach einer weiteren Verzögerung
dieser Zeitdauer mit
SIGKILL beendet. (Siehe
KillMode= in
systemd.kill(5).) Akzeptiert einen einheitenfreien Wert in Sekunden
oder einen Zeitdauerwert wie »5min 20s«. Durch Übergabe
von »0« wird die Zeitüberschreitungslogik deaktiviert.
Der Vorgabewert wird aus der Option
DefaultTimeoutStartSec= in
systemd-system.conf(5) gesetzt.
Lesen Sie systemd.exec(5) und systemd.kill(5)
für weitere Einstellungen.