From the course: Linux: Package Managers and Repositories

The RPM and YUM package managers - Linux Tutorial

From the course: Linux: Package Managers and Repositories

Start my 1-month free trial

The RPM and YUM package managers

- [Instructor] On RedHat, CentOS, and Fedora, the RMP package manager, or RedHat package manager is the software that builds, installs, updates, and otherwise manages individual software packages on a system. These packages contain either pre-compiled binary files, or source code to build binaries, and metadata that describes how RPM should treat the files, where they should be installed in the system, how they should be compiled, and so on. We can either use RPM directly, if we have a .rpm file to install, or we can use yum to search respositories and interact with RPM on our behalf. Yum stands for Yellowdog Updater, Modified. The name Yellowdog comes from a distribution of Linux that was focused on IBM's power line of processors. And, incidentally, was also one of the popular versions of Linux to run on old, non-intel Macs in the early and mid 2000s. Yum is a re-implementation of an earlier package manager, called yup, or Yellowdog Updater, which was done at Duke University. Yum, sitting on top of RPM, is the default package management interface on RedHat Enterprise Linux, CentOS, and older versions of Fedora. As of Fedora 22, yum was switched out in favor of dandified yum, or DNF, which operates largely the same, though it can be faster, and has a different method of resolving package dependencies. DNF generally follows the same command sytax as yum, so I won't be covering it separately here. One of the advantages we get from using yum, instead of just using RPM, is that yum manages dependencies for packages automatically. So, if a given package requires, say, Perl or Python to run, yum will go out and grab that package and anything it might need to ensure the actual package we want to install has all of the resources and other packages that it expects. If you were to try to install a package that had dependencies with RMP, you'd need to know what all those dependencies are, and have all the RMP files for those dependencies already on hand. So yum saves us a lot of work. While we have to specify a specific package file to work with when using the RPM software, yum gives us tools to work at a higher level, so we don't, for example, have to go search the web and download an RPM file to install. We can use tools yum provides to search for software and install it right from the command line. RPM keeps track of software that's installed and removed in the RPM DB, and when you run certain yum commands, the yum software updates a local copy of the repo data, so you can find out information about packages when you're offline. I encourage you to make use of the man pages for both yum and RPM, with man yum and man RPM, respectively. Because there's a lot of good information in there about particular commands and options. In this chapter, we'll take a look at both installing and managing packages with RPM directly, and using yum to do the same things.

Contents