In Linux, a package manager is a collection of software tools that automate the process of installing, upgrading, configuring, and removing software. A package manager maintains a database of information about installed packages (called the package database) that enables the package manager to uninstall software, establish whether a new package’s dependencies have been met, and determine whether a package you’re trying to install has already been installed.
Here is a list of the major functions of a packet manager:
- verifying file checksums to ensure the validity of the installed software.
- verifying digital signatures to authenticate the origin of packages.
- upgrading software with latest versions.
- managing dependencies to ensure a package is installed with all packages it requires.
- creating binary packages.
Two major versions of package management tools exist:
- RPM Package Manager (RPM)
- Debian package manager
You cannot install a Debian package on an RPM-based system, or vice versa. However, tools to convert between formats exist (such as alien).