BEZEICHNUNG
flock - Sperrungen in Shell-Skripten verwaltenÜBERSICHT
flock [Optionen] Datei|Verzeichnis Befehl [Argumente]BESCHREIBUNG
Das Dienstprogramm flock(2) verwaltet Sperrungen über Shell-Skripte oder die Befehlszeile.OPTIONEN
-c, --command Befehlübergibt einen einzelnen Befehl
ohne Argumente an die Shell mit -c.
ist der Exit-Status, wenn die Option -n
verwendet wird und die kollidierende Sperrung besteht, oder wenn die Option
-w verwendet und die Zeit überschritten wird. Der Vorgabewert
ist 1. Die Zahl muss im Bereich von 0 bis 255 liegen
(einschließlich dieser Werte).
forkt nicht vor der Ausführung von
Befehl. Bei der Ausführung wird der Flock-Prozess durch
Befehl ersetzt, der dann die Sperre hält. Diese Option ist zu
--close inkompatibel, da andernfalls nichts zum Halten der Sperre
übrigbleiben würde.
richtet eine exklusive Sperrung ein,
gelegentlich auch Schreibsperre genannt. Dies ist die Voreinstellung.
schlägt fehl, anstatt zu warten, wenn
eine Sperre nicht unmittelbar eingerichtet werden kann. Siehe die Option
-E für den verwendeten Exit-Status.
schließt den Dateideskriptor,
für den die Sperrung besteht, bevor der Befehl ausgeführt
wird. Dies ist sinnvoll, wenn der Befehl einen Kindprozess erzeugt, der
nicht ebenfalls die Sperrung erhalten soll.
richtet eine gemeinsame Sperre ein,
gelegentlich auch Lesesperre genannt.
löst eine Sperrung. Dies ist
normalerweise nicht erforderlich, da eine Sperrung automatisch gelöst
wird, wenn die Datei geschlossen wird. Dennoch kann es in speziellen
Fällen nötig sein, zum Beispiel wenn die eingeschlossene
Befehlsgruppe einen Hintergrundprozess geforkt haben könnte, welcher
die Sperrung nicht übernehmen soll.
verursacht einen Fehlschlag, wenn die Sperrung
nicht innerhalb der angegebenen Anzahl Sekunden eingerichtet werden
kann. Dezimale Nachkommastellen sind zulässig. Siehe die Option
-E für den verwendeten Exit-Status. Wenn für
Sekunden Null angegeben ist, wird dies als --nonblock
interpretiert.
meldet, wie lange es bis zur
tatsächlichen Sperrung dauerte oder warum die Sperrung nicht erreicht
werden konnte.
zeigt einen Hilfetext an und beendet das
Programm.
zeigt die Versionsnummer an und beendet das
Programm.
EXIT-STATUS
Der Befehl verwendet generell die Exit-Status-Werte aus <sysexits.h>, außer wenn Sie die Optionen -n oder -w verwenden, welche beim Einrichten der Sperre einen Fehler melden, mit einem durch die Option -E festgelegten Exit-Status, oder 1 als Voreinstellung. Der durch -E angegebene Exit-Status muss im Bereich von 0 bis 255 liegen (einschließlich dieser Werte).ANMERKUNGEN
flock erkennt keine Deadlocks. Siehe flock(2) für Details.BEISPIELE
Beachten Sie, dass »shell> « in Beispielen eine Eingabeaufforderung darstellt.richtet eine exklusive Sperrung des
Verzeichnisses /tmp ein, woraufhin der zweite Befehl scheitert.
richtet eine gemeinsame Sperre des
Verzeichnisses /tmp ein, woraufhin der zweite Befehl nicht scheitert.
Beachten Sie, dass die Einrichtung einer exklusiven Sperre mit dem zweiten
Befehl scheitern wird.
holt die exklusive
»lokale-Sperrdatei«, bevor »echo« mit »a b
c« ausgeführt wird.
Die Form ist praktisch in Shell-Skripten. Der
Modus zum Öffnen der Datei spielt für flock keine Rolle.
Die Verwendung von > oder >> ermöglicht das
Anlegen der Sperrdatei, falls sie noch nicht existiert, wofür
allerdings Schreibrechte erforderlich sind. Mit < wird
vorausgesetzt, dass die Datei bereits existiert und nur Lesezugriffsrechte
nötig sind.
Dies ist ein nützlicher Baustein-Code
für Shell-Skripte. Setzen Sie es an den Anfang des zu sperrenden
Skripts und es wird sich bei der ersten Ausführung automatisch sperren.
Wenn die Umgebungsvariable $FLOCKER für das auszuführende
Shell-Skript nicht gesetzt ist, dann führen Sie flock aus und
richten eine exklusive nicht-blockierende Sperre ein (mit dem Skript selbst
als Sperrdatei), bevor sie es mit den richtigen Argumenten selbst erneut
ausführen. Es setzt auch die Umgebungsvariable FLOCKER auf den
richtigen Wert, so dass es nicht erneut läuft.
Diese Form ist für die Sperrung einer
Datei praktisch, ohne einen Unterprozess zu starten. Die Shell öffnet
die Sperrdatei zum Lesen und Schreiben als Dateideskriptor 4; dann wird
flock zum Sperren des Deskriptors verwendet.
AUTOREN
H. <[email protected]>PeterCOPYRIGHT
Copyright © 2003-2006 H. Peter Anvin. Dies ist freie Software, in den Quellen finden Sie die Bedingungen zur Weitergabe. Es gibt KEINE Garantie, auch nicht für die MARKTREIFE oder die TAUGLICHKEIT FÜR EINEN BESTIMMTEN ZWECK.SIEHE AUCH
flock(2)FEHLER MELDEN
Verwenden Sie zum Melden von Fehlern das Fehlererfassungssystem auf <https://github.com/util-linux/util-linux/issues>.VERFÜGBARKEIT
Der Befehl flock ist Teil des Pakets util-linux, welches heruntergeladen werden kann von: Linux Kernel Archive <https://www.kernel.org/pub/linux/utils/util-linux/>.ÜBERSETZUNG
Die deutsche Übersetzung dieser Handbuchseite wurde von Dr. Tobias Quathamer <[email protected]>, Helge Kreutzmann <[email protected]> und Mario Blättermann <[email protected]> erstellt. Diese Übersetzung ist Freie Dokumentation; lesen Sie die GNU General Public License Version 3 oder neuer bezüglich der Copyright-Bedingungen. Es wird KEINE HAFTUNG übernommen. Wenn Sie Fehler in der Übersetzung dieser Handbuchseite finden, schicken Sie bitte eine E-Mail an die Mailingliste der Übersetzer11. Mai 2022 | util-linux 2.38.1 |