deb-preinst(5) dpkg suite deb-preinst(5)

# [NAME](#NAME)

deb-preinst - package pre-installation maintainer script

# [SYNOPSIS](#SYNOPSIS)

**DEBIAN/preinst**

# [DESCRIPTION](#DESCRIPTION)

A package can perform several pre-installation actions via maintainer scripts, by including an executable *preinst* file in its control archive (i.e. *DEBIAN/preinst* during package creation).

The script can be called in the following ways:

[*new-preinst* **install**](#new)

Before the package is installed.

[*new-preinst* **install** *old-version* *new-version*](#new~2)

Before a removed package is upgraded.

Support for *new-version* since dpkg 1.18.5.

[*new-preinst* **upgrade** *old-version* *new-version*](#new~3)

Before the package is upgraded.

Support for *new-version* since dpkg 1.18.5.

[*old-preinst* **abort-upgrade** *new-version*](#old)

If *postrm* fails during upgrade or fails on failed upgrade.

# [SEE ALSO](#SEE_ALSO)

[**dpkg**(1)](/man/os/dpkg/dpkg.1).

2026-09-09 1.23.11-dirty

---

Document: deb-preinst(5) from dpkg 1.23.11-r0 (Chainguard OS)
Source: https://git.dpkg.org/git/dpkg/dpkg.git
