FLOCK(1) | Commandes de l'utilisateur | FLOCK(1) |
flock - Gérer des verrous depuis des scripts d'interpréteur
flock [options] fichier|répertoire commande [arguments]
flock [options] fichier|répertoire -c commande
flock [options] numéro
Cet utilitaire gère les verrous flock(2) à partir de scripts d'interpréteur ou de la ligne de commande.
Les première et deuxième formes précédentes enveloppent l'exécution d'une commande par un verrou, de façon similaire à su(1) ou newgrp(1). Elles verrouillent soit le fichier, soit le répertoire indiqué, qui est créé (en supposant que vous ayez les droits adéquats) s'il n'existe pas déjà. Par défaut, si le verrou ne peut pas être obtenu immédiatement, flock attend jusqu’à ce que le verrou soit disponible.
La troisième forme utilise un fichier ouvert par son numéro de descripteur de fichier. Consultez les exemples suivants montrant comment l’utiliser.
-c, --command commande
-E, --conflict-exit-code numéro
-F, --no-fork
-e, -x, --exclusive
-n, --nb, --nonblock
-o, --close
-s, --shared
-u, --unlock
-w, --wait, --timeout délai
--verbose
-h, --help
-V, --version
La commande utilise les valeurs de code de retour de sysexits.h pour tout, sauf avec les options -n ou -w, qui signalent un échec d’obtention du verrou avec un code de retour donné par l’option -E ou avec 1 par défaut. Le code de retour donné par -E doit être compris entre 0 et 255.
En utilisant la variante commande et si l’exécution de l’enfant a fonctionné, le code de retour est celui de la commande enfant.
flock ne détecte pas les blocages. Consultez flock(2) pour des détails.
Certains systèmes de fichiers (par exemple NFS et CIFS) n'ont qu'une implémentation limitée de flock(2) et flock peut échouer systématiquement. Consultez flock(2), nfs(5) et mount.cifs(8) pour des détails. Selon les options de montage, flock peut y échouer tout le temps.
Notez que « shell> » dans les exemples ci-dessous est une invite de commande.
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 fichier_verrou_local echo 'a b c'
(; flock -n 9 || exit 1; # ... commandes exécutées sous un verrou ...; ) 9>/var/lock/mon_fichier_verrou
[ "${FLOCKER}" != "$0" ] && exec env FLOCKER="$0" flock -en "$0" "$0" "$@" || :
shell> exec 4<>/var/lock/mon_fichier_verrou; shell> flock -n 4
H. Peter Anvin <hpa@zytor.com>
Copyright © 2003-2006 H. Peter Anvin. C'est un logiciel libre ; consultez les sources pour les conditions de copie. Il n'y a AUCUNE garantie ; même pas de VALEUR MARCHANDE ou d'ADÉQUATION À UNE UTILISATION PARTICULIÈRE.
Pour envoyer un rapport de bogue, utilisez le système de gestion des problèmes à l'adresse <https://github.com/util-linux/util-linux/issues>.
La commande flock fait partie du paquet util-linux, téléchargeable sur Linux Kernel Archive <https://www.kernel.org/pub/linux/utils/util-linux/>.
La traduction française de cette page de manuel a été créée par Christophe Blaess <ccb@club-internet.fr>, Michel Quercia <quercia AT cal DOT enst DOT fr>, Thierry Vignaud <tvignaud@mandriva.com>, Frédéric Delanoy <delanoy_f@yahoo.com>, Thierry Vignaud <tvignaud@mandriva.com>, Christophe Sauthier <christophe@sauthier.com>, Sébastien Blanchet, Jérôme Perzyna <jperzyna@yahoo.fr>, Aymeric Nys <aymeric AT nnx POINT com>, Alain Portal <aportal@univ-montp2.fr>, Thomas Huriaux <thomas.huriaux@gmail.com>, Yves Rütschlé <l10n@rutschle.net>, Jean-Luc Coulon (f5ibh) <jean-luc.coulon@wanadoo.fr>, Julien Cristau <jcristau@debian.org>, Philippe Piette <foudre-blanche@skynet.be>, Jean-Baka Domelevo-Entfellner <domelevo@gmail.com>, Nicolas Haller <nicolas@boiteameuh.org>, Sylvain Archenault <sylvain.archenault@laposte.net>, Valéry Perrin <valery.perrin.debian@free.fr>, Jade Alglave <jade.alglave@ens-lyon.org>, Nicolas François <nicolas.francois@centraliens.net>, Alexandre Kuoch <alex.kuoch@gmail.com>, Lyes Zemmouche <iliaas@hotmail.fr>, Florentin Duneau <fduneau@gmail.com>, Alexandre Normand <aj.normand@free.fr>, David Prévot <david@tilapin.org> et Jean-Philippe MENGUAL <jpmengual@debian.org>
Cette traduction est une documentation libre ; veuillez vous reporter à la GNU General Public License version 3 concernant les conditions de copie et de distribution. Il n'y a aucune RESPONSABILITÉ LÉGALE.
Si vous découvrez un bogue dans la traduction de cette page de manuel, veuillez envoyer un message à debian-l10n-french@lists.debian.org.
11 mai 2022 | util-linux 2.38.1 |