---
name: "postlock"
section: "1"
platform: "linux"
package: "postfix"
version: "3.11.7-1"
release: "Arch Linux 2026-11-01"
platforms: ["linux", "macos"]
url: "https://new.carta.tech/postlock"
---

# postlock(1)

lock mail folder and execute command

## NAME

postlock - lock mail folder and execute command

## SYNOPSIS

```

```

**postlock** \[**-c** *config\_dir*\] \[**-l** *lock\_style*\]\
         \[**-v**\] *file command...*

## DESCRIPTION

The [**postlock**(1)](/postlock/1.md) command locks *file* for exclusive access, and executes *command*. The locking method is compatible with the Postfix UNIX-style local delivery agent.

Options:

- **-c** *config\_dir*

  Read the **main.cf** configuration file in the named directory instead of the default configuration directory.

- **-l** *lock\_style*

  Override the locking method specified via the **mailbox\_delivery\_lock** configuration parameter (see below).

- **-v**

  Enable verbose logging for debugging purposes. Multiple **-v** options make the software increasingly verbose.

Arguments:

- *file*

  A mailbox file. The user should have read/write permission.

- *command...*

  The command to execute while *file* is locked for exclusive access.  The command is executed directly, i.e. without interpretation by a shell command interpreter.

## DIAGNOSTICS

The result status is 75 (EX\_TEMPFAIL) when [**postlock**(1)](/postlock/1.md) could not perform the requested operation.  Otherwise, the exit status is the exit status from the command.

## BUGS

With remote file systems, the ability to acquire a lock does not necessarily eliminate access conflicts. Avoid file access by processes running on different machines.

## ENVIRONMENT

```

```

- **MAIL\_CONFIG**

  Directory with Postfix configuration files.

- **MAIL\_VERBOSE**

  Enable verbose logging for debugging purposes.

## CONFIGURATION PARAMETERS

```

```

The following **main.cf** parameters are especially relevant to this program. The text below provides only a parameter summary. See [**postconf**(5)](/postconf/5.md) for more details including examples.

## LOCKING CONTROLS

```

```

- **deliver\_lock\_attempts (20)**

  The maximal number of attempts to acquire an exclusive lock on a mailbox file or [**bounce**(8)](/bounce/8.md) logfile.

- **deliver\_lock\_delay (1s)**

  The time between attempts to acquire an exclusive lock on a mailbox file or [**bounce**(8)](/bounce/8.md) logfile.

- **stale\_lock\_time (500s)**

  The time after which a stale exclusive mailbox lockfile is removed.

- **mailbox\_delivery\_lock (see 'postconf -d' output)**

  How to lock a UNIX-style [**local**(8)](/local/8.md) mailbox before attempting delivery.

## RESOURCE AND RATE CONTROLS

```

```

- **fork\_attempts (5)**

  The maximal number of attempts to fork() a child process.

- **fork\_delay (1s)**

  The delay between attempts to fork() a child process.

## MISCELLANEOUS CONTROLS

```

```

- **config\_directory (see 'postconf -d' output)**

  The default location of the Postfix main.cf and master.cf configuration files.

- **import\_environment (see 'postconf -d' output)**

  The list of environment variables that a privileged Postfix process will import from a non-Postfix parent process, or name=value environment overrides.

## SEE ALSO

```
postconf(5), configuration parameters
```

## LICENSE

```

```

The Secure Mailer license must be distributed with this software.

## AUTHOR(S)

```
Wietse Venema
IBM T.J. Watson Research
P.O. Box 704
Yorktown Heights, NY 10598, USA
Wietse Venema
Google, Inc.
111 8th Avenue
New York, NY 10011, USA
```
