Finding a package (online):
apt-cache search $search_string
Finding available versions of a package:
apt-cache policy $package_name
Installing/pinning a specific version:
apt-get install --allow-downgrades $package_name=$package_version
apt-mark hold $package_name
Finding full details of a package:
apt-cache show $package_name
Dry-run installation:
apt-get install -s $package_name
Finding an installed package:
apt list --installed | grep $search_string
Listing installed kernel packages:
dpkg --list | egrep 'linux-image|linux-headers' | awk '/ii/{print $2}'
Finding what package a file came from:
dpkg -S /path/to/file
Finding what files a package provides:
dpkg -L $package_name
Find what a package depends on:
apt-cache depends $package_name
Find what depends on a package:
apt-cache rdepends $package_name
APT history:
cat /var/log/apt/history.log
zcat /var/log/apt/history.log.*.gz
zgrep "$package" /var/log/apt/history.log.*.gz
APT log (captures output of APT operations)
less /var/log/apt/term.log
zless /var/log/apt/term.log.*.gz