BlogBlog ÜbersichtjailscriptportsoptFreeBSDLinksThermoskanne

Lock-Datei erstellen während ein Befehl ausgeführt wird

Mit Hilfe von lockf kann eine Lock-Datei erstellt werden während ein Befehl ausgeführt wird, so dass zum Beispiel der gleiche Befehl nicht gleichzeitig nochmals ausgeführt wird. Im folgenden Beispiel wird die Datei /tmp/lock als Lock-Datei verwendet während der Befehl sleep 5 ausgeführt wird:

# lockf /tmp/lock sleep 5

Startet man nun einen zweiten Befehl mit lockf und der gleichen Lock-Datei so wird mit der Ausführung des zweiten Befehles solange gewartet bis die Lock-Datei nicht mehr vorhanden ist:

# /usr/bin/time -h lockf /tmp/lock whoami
beat
        4.60s real              0.00s user              0.00s sys

Mit Hilfe der -t Option kann angegeben werden wieviele Sekunden lockf maximal wartet. Ist nach Ablauf dieser Zeit die Lock-Datei noch vorhanden bricht lockf ab:

# lockf -t 1 /tmp/lock whoami
lockf: /tmp/lock: already locked

Auf FreeBSD ist lockf standardmässig im Basissystem vorhanden. Mehr Informationen zu lockf findet man in der Manpage lockf(1).

 Permalink

Comments

No new comments allowed (anymore) on this post.