Installing packages on CentOS / RHEL

Most of the times when you want to setup a server for specific matter, it’s recommended to install the OS in minimal mode and install packages you want individually and configure them one by one. You can choose different ways to install your desired packages:

  • Using YUM command
  • Using RPM command
  • Compiling each package

Each of these ways has it’s positive and negative points. that I’m going to write in brief:


[tooltip content=”What are pros and cons?” url=”” ]Pros:[/tooltip]

    • Ease of use (Install, Remove, Update)
    • Automatic dependency detection
    • package search
    • package information


    • You are limited to the repository packages and versions
    • All configurations are pre-set
    • Your server must be exposed to the Internet
    • It’s nnot pre-installed in minimal CentOS or RHEL versions



    • you can install pre-downloaded package
    • Use your favorite URL to download .rpm files from
    • Ease of use
    • lots of options to exactly do what you want
    • It’s even available in minimal version of CentOS or RHEL


    • does not detect dependencies
    • no loading bar or something to demonstrate the ETA.

Note that this command can be so dangerous, due to this fact that the user can download package from every available (even untrusted) repositories.



    • You have full control on what is going on and which setting is being set during the installation.


    • It is the toughest way to have a package installed.
    • You really need to read each error occurs during the process to be able to solve the issue

To sum up, these ways are the ways you should be familiar with if you want to manage your server in a good manner. The first way (YUM) is the easiest way and with the least control on the configuration during the installation, and the last way is in the exact opposite, and compiling a package is the most right way to have a package on your server.

Leave a Reply

Your email address will not be published. Required fields are marked *

This is new type of CAPTCHA, make the puzzle please !WordPress CAPTCHA