flock
ShellPaquet : util-linux
Prend un verrou sur un fichier le temps d'exécuter une commande, pour qu'une deuxième instance attende ou renonce. C'est ce qui empêche une sauvegarde lancée par minuterie de chevaucher la précédente.
Ce que font ses options dans les leçons
Tiré du même glossaire que les leçons affichent sous leurs commandes ; les deux ne peuvent pas se contredire.
flock -n- Renonce immédiatement si le verrou est déjà pris, au lieu d'attendre. Sort avec le code 1 sans rien afficher : c'est l'option d'une tâche planifiée, qui sera relancée de toute façon.
flock -w- Attend le verrou pendant ce nombre de secondes au plus, fractions comprises, puis échoue comme
-n.-w 0équivaut à-n. Le délai doit rester plus court que l'intervalle de planification, sans quoi les exécutions en attente s'empilent. flock -o- Ferme le descripteur porteur du verrou avant de lancer la commande, pour qu'un processus lancé en arrière-plan n'en hérite pas et ne retienne pas le verrou après la fin du parent.
flock -u- Relâche le verrou d'un descripteur déjà ouvert (
flock -u 9). Rarement nécessaire — un verrou tombe à la fermeture du descripteur — sauf si un enfant en arrière-plan risque de le conserver. flock --verbose- Écrit sur la sortie d'erreur pourquoi le verrou n'a pas été obtenu (
failed to get lock,timeout while waiting to get lock) ou combien de temps il a fallu pour l'obtenir. Sans elle, une exécution sautée ne laisse aucune trace.
