Le fichier de verrouillage que vous spécifiez comme option pour /usr/bin/flock
; /var/cron.lock
reste verrouillé avec le flock(2)
appel système pour la durée de votre script /usr/bin/myscript
. Une fois votre script terminé, ce verrou est à nouveau libéré par /usr/bin/flock
.
Lorsque le /usr/bin/flock
la commande ne peut pas atteindre un verrou, c'est-à-dire parce que /var/cron.lock
est déjà verrouillé car votre script est toujours en cours d'exécution (ou toute autre condition d'erreur), /usr/bin/flock n'exécutera pas votre script. Votre script n'a pas besoin d'être modifié et n'a pas besoin de vérifier le verrou, tout est fait par /usr/bin/flock.
Le fichier de verrouillage lui-même sera créé en tant que fichier vide par le /usr/bin/flock
s'il n'existe pas encore, mais après sa création, le fichier de verrouillage ne change pas, seul un flock(2) sera appliqué et supprimé. Le fichier ne sera pas supprimé une fois votre script terminé.