apt – package management for Debian/Ubuntu

apt command
apt command

apt is the high-level package manager for Debian-based Linux distributions (Debian, Ubuntu, Mint, etc.).

Synopsis

apt [OPTIONS] COMMAND [PACKAGE...]

Common Commands

CommandDescription
updateUpdate package lists
upgradeUpgrade all packages
installInstall packages
removeRemove packages
purgeRemove packages + config files
searchSearch for packages
showShow package details
listList packages
autoremoveRemove unused dependencies

Examples

Update package lists

$ sudo apt update
Hit:1 http://archive.ubuntu.com/ubuntu jammy InRelease
Get:2 http://security.ubuntu.com/ubuntu jammy-security InRelease [110 kB]
...

Upgrade all packages

$ sudo apt upgrade
$ sudo apt full-upgrade    # Also removes obsolete packages

Install package

$ sudo apt install nginx
$ sudo apt install nginx php mysql-server    # Multiple

Remove package

$ sudo apt remove nginx          # Keep config files
$ sudo apt purge nginx           # Remove everything
$ sudo apt autoremove            # Clean unused dependencies

Search for packages

$ apt search nginx
$ apt search "web server"

Show package info

$ apt show nginx
Package: nginx
Version: 1.18.0-6ubuntu14
...

List packages

$ apt list --installed           # Installed packages
$ apt list --upgradable          # Packages with updates

Common Patterns

Update and upgrade

$ sudo apt update && sudo apt upgrade -y

Install without prompts

$ sudo apt install -y nginx

Clean up

$ sudo apt autoremove
$ sudo apt clean                 # Clear package cache

Fix broken packages

$ sudo apt --fix-broken install

apt vs apt-get

Featureaptapt-get
Progress barYesNo
Color outputYesNo
Upgradable listYesNo
ScriptsNo (can change)Yes

Use apt interactively, apt-get in scripts.

Tips

  • Always update first: apt update before apt install
  • Check before upgrade: apt list --upgradable
  • Hold packages: apt-mark hold package to prevent upgrades
  • See what will happen: apt install --dry-run package

See Also

  • dpkg — Low-level package tool
  • apt-get — Script-friendly apt
  • snap — Snap package manager

Tutorials