The Yellow dog Updater Modified (YUM) is a package management application for computers running Linux operating systems. A package is usually a software application, but the term can also encompass other items such as documentation, source code, and extra levels for games. Package management is a term used to describe the processes of adding, removing, and updating software on a computer.
Yum was written for a Linux distribution called Yellowdog, but will work with many others that use the RedHat Package Manager (RPM) format for their packages. It is free software developed by Seth Vidal and released as open-source, which means that people can access the code to help to fix bugs or develop customized versions of the application. It comes bundled with many Linux distributions, but can also be downloaded separately from the yum website.
On these operating systems, yum is a standard method of managing the installation and removal of software. Several graphical applications exist to allow users to easily add and remove packages; however, many are simply friendly interfaces with yum running underneath. These programs present the user with a list of available software and pass the user's selection on for processing. It is yum that actually downloads the packages and installs them in the background. Those familiar with the Linux command line may find it more convenient to type the commands in directly.
Packages are downloaded from collections called repositories, which may be online, on a network, and/or on installation media. If one package due to be installed relies on another being present, this dependency can usually be resolved without the user needing to know the details. For example, a game being installed may depend on specific software to play its music. The problem of solving such dependencies can be handled by yum because it knows about all the other packages that are available in the repository.
While it is mostly used to install new software, entire system upgrades are also possible with yum. It has a feature that determines which packages need to be modified in order to update the operating system to the latest version. Additionally, because it knows about so many packages, the user has a wealth of software at his or her fingertips. By creating and managing a custom repository, network managers, such as the computer support team for a company, can easily control what software is available to install on their users' computers.