---
name: "runlock"
section: "1"
platform: "linux"
package: "cronutils"
version: "1.10-2"
release: "Debian 13 (Trixie)"
platforms: ["linux"]
url: "https://new.carta.tech/runlock"
---

# runlock(1)

prevent concurrent execution of a process

## NAME

runlock - prevent concurrent execution of a process

## SYNOPSYS

**runlock** \[ **-h** \]

**runlock** \[ **-d** \] \[ **-f** *pathname* \] \[ **-t** *timeout* \] *command* \[ *args* \]

## DESCRIPTION

**runlock** tries to hold an exclusive lock while it executes a command. Subsequent execution of **runlock** with the same lock, while that lock is held, will cause the new instance of **runlock** to terminate with a failure exit code. Otherwise, the exit code of the subprocess is returned.

## USAGE

- **-d**

  Debug mode; send log messages to standard error as well as to the system log.

- **-f** *pathname*

  Specifies the pathname of the file to use as a lock file.  The default is to create a lock file in /tmp/cronutils-$USER with the name of the command, and suffix ".pid".

- **-t** *timeout*

  Specifies the duration, in seconds, for **runlock** to wait before giving up on trying to acquire the lock.  The default is 5 seconds.

- **-h**

  Prints some basic help.

## BUGS

Sending SIGALRM to **runlock** before the timer has expired will cause the subprocess to be killed.

## SEE ALSO

[**runalarm**(1)](/runalarm/1.md), [**runstat**(1)](/runstat/1.md)

## AUTHOR

**runlock** was written by Jamie Wilkinson \<jaq@google.com\>.

## COPYRIGHT

This program is copyright (C) 2010 Google, Inc.

It is licensed under the Apache License, Version 2.0
