table of contents
lockfile-progs(1) | Lockfile programs | lockfile-progs(1) |
NAME¶
lockfile-progs - command-line programs to safely lock and unlock files and mailboxes (via liblockfile).
SYNOPSIS¶
mail-lock [--use-pid] [--retry retry-count] mail-unlock mail-touchlock [--oneshot] lockfile-create [--use-pid] [--retry retry-count] [--lock-name] filename lockfile-remove [--lock-name] filename lockfile-touch [--oneshot] [--lock-name] filename lockfile-check [--use-pid] [--lock-name] filename
DESCRIPTION¶
Lockfile-progs provides a set a programs that can be used to lock and unlock mailboxes and files safely (via liblockfile):
mail-lock - lock the current user's mailbox mail-unlock - unlock the current user's mailbox mail-touchlock - touch the lock on the current user's mailbox lockfile-create - lock a given file lockfile-remove - remove the lock on a given file lockfile-touch - touch the lock on a given file lockfile-check - check the lock on a given file
By default, the filename argument refers to the name of the file to be locked, and the name of the lockfile will be filename .lock. However, if the --lock-name argument is specified, then filename will be taken as the name of the lockfile itself.
Each of the mail locking commands attempts to lock /var/spool/mail/<user>, where <user> is the name associated with the effective user ID, as determined by via geteuid(2).
Once a file is locked, the lock must be touched at least once every five minutes or the lock will be considered stale, and subsequent lock attempts will succeed. Also see the --use-pid option and the lockfile_create(3) manpage.
The lockfile-check command tests whether or not a valid lock already exists.
OPTIONS¶
-q, --quiet
-v, --verbose
-l, --lock-name
-p, --use-pid
-o, --oneshot
-r retry-count, --retry retry-count
EXAMPLES¶
Locking a file during a lengthy process:
lockfile-create /some/file
lockfile-touch /some/file &
# Save the PID of the lockfile-touch process
BADGER="$!"
do-something-important-with /some/file
kill "${BADGER}"
lockfile-remove /some/file
EXIT STATUS¶
0
Not 0
SEE ALSO¶
maillock(3) touchlock(3) mailunlock(3) lockfile_create(3) lockfile_remove(3) lockfile_touch(3) lockfile_check(3)
AUTHOR¶
Written by Rob Browning <rlb@defaultvalue.org>
2021-09-03 | 0.1.19 |