FLOCK(1) | Dienstprogramme für Benutzer | FLOCK(1) |
BEZEICHNUNG¶
flock - Sperrungen in Shell-Skripten verwalten
ÜBERSICHT¶
flock [Optionen] Datei|Verzeichnis Befehl [Argumente]
flock [Optionen] Datei|Verzeichnis -c Befehl
flock [Optionen] Nummer
BESCHREIBUNG¶
Das Dienstprogramm flock(2) verwaltet Sperrungen über Shell-Skripte oder die Befehlszeile.
Die erste und die zweite der oben genannten Formen führen die Sperrung im Rahmen der Ausführung eines Befehls aus, ähnlich wie su(1) oder newgrp(1) dies tun. Sie sperren eine angegebene Datei oder ein Verzeichnis, welche angelegt werden (ausreichende Berechtigungen vorausgesetzt), wenn sie noch nicht existieren. In der Voreinstellung wartet flock, bis die Sperrung verfügbar wird, wenn diese nicht unmittelbar erreicht werden kann.
Die dritte Form verwendet eine offene Datei anhand der Dateideskriptors-Nummer. In den unten stehenden Beispielen sehen Sie, wie Sie dies verwenden können.
OPTIONEN¶
-c, --command Befehl
-E, --conflict-exit-code Zahl
-F, --no-fork
-e, -x, --exclusive
-n, --nb, --nonblock
-o, --close
-s, --shared
-u, --unlock
-w, --wait, --timeout Sekunden
--verbose
-h, --help
-V, --version
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).
Wenn Sie die Befehl-Variante verwenden und die Ausführung des Kindprozesses funktioniert, dann ist der Exit-Status jener des Kindprozess-Befehls.
ANMERKUNGEN¶
flock erkennt keine Deadlocks. Siehe flock(2) für Details.
Einige Dateisysteme (zum Beispiel NFS und CIFS) haben flock(2) nur unzureichend implementiert und flock kann immer fehlschlagen. Für Details, siehe flock(2), nfs(5) und mount.cifs(8). Abhängig von den Einhängeoptionen kann flock dort immer fehlschlagen.
BEISPIELE¶
Beachten Sie, dass »shell> « in Beispielen eine Eingabeaufforderung darstellt.
shell1> flock /tmp -c cat; shell2> flock -w .007 /tmp -c echo; /bin/echo $?
shell1> flock -s /tmp -c cat; shell2> flock -s -w .007 /tmp -c echo; /bin/echo $?
shell> flock -x lokale-Sperrdatei echo 'a b c'
(; flock -n 9 || exit 1; # … unter der Sperrung ausgeführte Befehle …; ) 9>/var/lock/mylockfile
[ "${FLOCKER}" != "$0" ] && exec env FLOCKER="$0" flock -en "$0" "$0" "$@" || :
shell> exec 4<>/var/lock/meine_Sperrdatei; shell> flock -n 4
AUTOREN¶
H. Peter Anvin <hpa@zytor.com>
COPYRIGHT¶
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¶
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 <toddy@debian.org>, Helge Kreutzmann <debian@helgefjell.de> und Mario Blättermann <mario.blaettermann@gmail.com> 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 Übersetzer.
11. Mai 2022 | util-linux 2.38.1 |