Red Hat Certified System Administrator(RHCSA)
Deploy Configure and Maintain Systems
Work with package module streams
In this lesson, you'll learn how to manage packaged module streams in RHEL 8. Application streams (or app streams) allow you to select from multiple versions of software packages grouped as modules, offering greater flexibility and compatibility for your environment.
A module is a collection of packages that are typically installed together, while a profile is a subset of that module tailored for a specific purpose—for example, server configuration, client setup, or development environment. Module streams can be active (enabled) or inactive (disabled), and only one version of a module stream can be active at any given time. This setup ensures that only the designated version of a package and its dependencies are installed, with the YUM package manager handling all dependencies automatically.
Note
If you ever need to verify which modules are available or currently active, the YUM package manager provides commands to list module streams and their profiles.
Viewing Available Modules
To display all available module streams, run the following command:
sudo yum module list
The output will look similar to this:
Extra Packages for Enterprise Linux Modular 8 - x86_64
Name Stream Profiles Summary
nginx mainline common [ nginx webserver]
nginx 1.20 common [ nginx webserver]
nodejs 13 default, Javascript runtime
develop
minimal
nodejs 16-epel default, Javascript runtime
develop
minimal
Detailed Module Information and Installation
For more detailed information about a specific module, you can search within its listings. For instance, the Node.js module may list several versions (such as 10, 12, 14, and 16). By default, installing Node.js without specifying a version will install version 10 with the common profile.
To install a specific version with a designated profile—for example, Node.js version 14 using the development profile—execute:
sudo yum module install nodejs:14/development
After installation, you can confirm the active module stream and its profiles by running:
sudo yum module list --installed nodejs
The output should indicate that Node.js version 14 is active, similar to the following:
Name Stream Profiles Summary
nodejs 14 [e] common [d], development [i], minimal, s2i
Hint: [d]efault, [e]nabled, [x]disabled, [i]ninstalled
Resetting Module Streams
If you need to revert to the default module settings—for example, to switch back to Node.js version 10 with the common profile—you can use the reset command:
sudo yum module reset nodejs
Once reset, you can install a different version (such as version 16 with the development profile) if needed. This modular approach simplifies the process of switching between different package versions to suit your current requirements.
Summary
This lesson covered how to view available modules, install a specific module stream with a chosen profile, and reset module streams in RHEL 8 using the YUM package manager.
Watch Video
Watch video content
Practice Lab
Practice lab