Linux Command Library


show, set and unset various settings for a package

apt-mark {-f=filename | {auto | manual} pkg... | {showauto | showmanual} [pkg...] } | {-v | --version} | {-h | --help}
apt-mark {hold | unhold | install | remove | purge} pkg... | {showhold | showinstall | showremove | showpurge} [pkg...]


can be used as a unified front-end to set various settings for a package, such as marking a package as being automatically/manually installed or changing dpkg selections such as hold, install, deinstall and purge which are respected e.g. by apt-get dselect-upgrade or aptitude.

When you request that a package is installed, and as a result other packages are installed to satisfy its dependencies, the dependencies are marked as being automatically installed, while the package you installed explicitly is marked as manually installed. Once an automatically installed package is no longer depended on by any manually installed package it is considered no longer needed and e.g. apt-get or aptitude will at least suggest removing them.


auto is used to mark a package as being automatically installed, which will cause the package to be removed when no more manually installed packages depend on this package.


manual is used to mark a package as being manually installed, which will prevent the package from being automatically removed if no other packages depend on it.


showauto is used to print a list of automatically installed packages with each package on a new line. All automatically installed packages will be listed if no package is given. If packages are given only those which are automatically installed will be shown.


showmanual can be used in the same way as showauto except that it will print a list of manually installed packages instead.


-f=filename, --file=filename

Read/Write package stats from the filename given with the parameter filename instead of from the default location, which is extended_status in the directory defined by the Configuration Item: Dir::State.


hold is used to mark a package as held back, which will prevent the package from being automatically installed, upgraded or removed.


unhold is used to cancel a previously set hold on a package to allow all actions again.


showhold is used to print a list of packages on hold in the same way as for the other show commands.

Some front-ends like apt-get dselect-upgrade can be used to apply previously scheduled changes to the install state of packages. Such changes can be scheduled with the install, remove (also known as deinstall) and purge commands. Packages with a specific selection can be displayed with showinstall, showremove and showpurge respectively. More information about these so called dpkg selections can be found in dpkg(1).

-h, --help

Show a short usage summary.

-v, --version

Show the program version.

-c, --config-file

Configuration File; Specify a configuration file to use. The program will read the default configuration file and then this configuration file. If configuration settings need to be set before the default configuration files are parsed specify a file with the APT_CONFIG environment variable. See apt.conf(5) for syntax information.

-o, --option

Set a Configuration Option; This will set an arbitrary configuration option. The syntax is -o Foo::Bar=bar. -o and --option can be used multiple times to set different options.


Status list of auto-installed packages. Configuration Item: Dir::State::extended_states.


apt-mark returns zero on normal operation, non-zero on error.

m[blue]APT bug pagem[][1]. If you wish to report a bug in APT, please see /usr/share/doc/debian/bug-reporting.txt or the reportbug(1) command.

Mike O'Connor

APT team

APT bug page

play store download app store download
Sonnenallee 29, 12047 Berlin, Germany

Privacy policy
Successfully copied