Linux Package Management

Installing Packages/Software on Linux

Installing, upgrading, patching, removing of software on Linux


Package Management is a key part of maintaining a secure and up to date Linux system. Many Linux distributions come with different package management tools for aiding the administrator. These package management tools are often referred to as package managers as they look after the complex process of installing, upgrading, configuring and removing of software packages. The package manager generally maintains a database of software installed. When you install a package, your package manager will generally check for any dependencies - prerequisites. These prerequisites will automatically be downloaded and installed. Packages are generally available from repositories. Most systems will have multi repositories. These can be from the main distribution source of your particular distribution or from third party contributors or organisations.

As we have already seen there are many different distributions of Linux to choose from, however, many of these distributions use standard package management tools:



RPM package management (Red Hat Package Manager)


One of the most commonly used package management systems is Red Hat's "RPM" system. The name "RPM" refers to the file extension of ".rpm". Originally RPM was created for Red hat Linux, it is now widely used by many other Linux distributions and even by IBM's AIX Unix system. As well as using RPM, many front end utilities - systems have been created for working with rpm packages:
RPM User Guide


yum - package management tool


yum: A very popular used front end to "RPM". Used by RHEL, CentOS, Oracle Linux and many other systems.
yum user guide


dnf - package management tool


dnf: A new package manaement tool for the replacement of yum. Currently only used on Fedora 18 and above systems.
dnf user guide


zypper - package management tool


zypper: Used by many administrators of SLES (SUSE Linux Enterprise Server) and openSUSE systems.
zypper user guide


yast - package management tool


yast: Used on SLES and open SUSE systems. Yast is a graphical menu driven interface.
yast user guide


Debian Package Management (Debian - Ubuntu - Mint Linux based Systems)


The management of packages on debian based systems can use several different package management tools. The most popular of these are "dpkg", "apt" , "apt-get" and "apt-cache".


dpkg - package management tool


dpkg: Debian Package Manager.
dpkg user guide


apt-get - package management tool


apt-get: apt-get package manager
apt-get user guide


apt-cache - package management tool


apt-cache: apt-cache package management tool
apt-cache user guide


Arch Linux Package Management (Arch Linux Based Distributions- Antergos - ArchBang - Manjaro )


The management of packages on Arch Linux based systems uses a package manager called PacMan.


PacMan - Arch Linux Based Package Management Tool


PacMan: Arch Linux Based Package Management Tool
PacMan user guide


Synaptic Package Manager (GUI) based


Although we have concentrated on CLI (command line interface package managers, it is worth mentioning that there are graphical user interface package managers available. A popular Debian based system is "synaptic". Basically Synaptic is a front end to the "Advanced Packaging Tool". The graphical interface offers many easy to use features such as: System Wide Upgrades, Package Search Facility, Repository Management, Package name filtering, browsable online package information plus many more features.



Package Management Tool


Package Management Tool (also known as "pirut") is also a (GUI) for Red Hat based systems. This package tool allows you to perform basic package management such as downloading, installing, removing and viewing packages. More importantly, it can also take care of dependencies.