Tag: rhel

How to install the EPEL Repo on a CentOS 7 and RHEL 7.x

What is the EPEL Repo?

EPEL stands for Extra Packages for Enterprise Linux. This is a package repo based on Fedora and it is managed and maintained by a Fedora Special Interest Group. The EPEL Repo contains many packages that are not shipped in the official CentOS or RHEL releases. They are very much compatible but are not officially supported.

How do I install the EPEL Repo on CentOS 7 or Red Hat Enterprise Linux 7?

Assuming you are logged in as root or have sudo access, then you only need one command:

Example output:

How do I verify that the EPEL Repo installed correctly?

You can view the installed repos by using the yum command:

Example output:

As you can see in line number 10 the EPEL repo is now installed and available on your system.



How to install PostgreSQL 9.3

This tutorial explains how to install PostgreSQL 9.3 on a CentOS 7 or RHEL 7 machine. It goes through the process of how to get the latest version of PostgreSQL through the very basic configurations needed to boot up the server.

Adding PostgreSQL Repository

CentOS ships with PostgreSQL installed available in it’s default repositories. It may not be the version you would like to install. For example CentOS 7 has PostgreSQL 9.2, while CentOS 6.5 has PostgreSQL 8.4. The current version of PostgreSQL is 9.3. For that reason we are going to add the PostgreSQL repority to our list of available repositories.

 Available Packages

PostgreSQL has quite a few packages available. For our purposes we only care about the server and it’s dependencies. But if you wanted some of the other utilities, like pg_upgrade(), you will need to install the contrib package. Or if you want to enable the Perl extension, then install the plperl package. Here is a listing of the available packages:

 Install PostgreSQL 9.3

To install PostgreSQL just run the yum install command as follows:

Initialize PostgreSQL 9.3

Before we can do anything we need to initialize PostgreSQL. This creates the database cluster and all the file and directories needed for PostgreSQL to store the database.

Configure PostgreSQL 9.3

By default PostgreSQL listens on localhost. To enable it to listen to any available address we must change this value either listen on all addresses with * or to a specific address. To do this we must edit the postgresql.conf file. This file holds all of the configuration parameters for PostgreSQL. The postgresql.conf file is stored in the data directory in our case on /var/lib/pgsql/9.3/data/.

Let’s set the listen_addresses to listen to all IP’s assigned to the machine:

Now PostgreSQL will listen on any external IP available.

In order to allow clients to connect from anywhere except the localhost, we must allow them by editing the pg_hba.conf file. This file also is stored in the data directory.

Let’s suppose you want your PostgreSQL server to accept connections from anywhere in your network. Your network range is Then we would add the following line to the pg_hba.conf file:

Defining the above we are adding connection socket of type host which can be any TCP/IP socket connection, this is for all available databases and all available users. From connections comming from the network and are being authenticated with md5 encrypted passwords.

You can add the settings manually or run the following command, which you should edit to accommodate your network range.

Start PostgreSQL 9.3 Server

Now that we have our server configured with basic settings we can start it.

You can run any of the two following commands to start PostgreSQL

To start PostgreSQL on startup enable the boot service

Check PostgreSQL 9.3 is Running

If you want to check the status of PostgreSQL

Login To PostgreSQL 9.3

To login to the PostgreSQL server we must change user to postgres. If you are logged in as root:

Once logged in as the postgres user execute the psql client command:

You are now logged into your new PostgreSQL 9.3 database.


If you followed all the instructions correctly you now have a running PostgreSQL 9.3 server on a CentOS 7 or RHEL 7 machine.


How do I install Ansible on Linux

What is Ansible?

In short is an automation tool. With Ansible you can automate code deployments, server configurations, automatic updates. It can do this on one machine or hundreds of machines. The big difference between Ansible and it’s competitors is with agentless interactions. Ansible does all of it’s interaction with the machines via SSH, therefore all that it needs is a playbook and SSH credentials to a remote machine. A playbook contains all of Ansible’s configurations and tasks to be executed. A playbook is written in YAML.

Installing Ansible

Ansible is readily available in Fedora 20. However CentOS 7 and RHEL 7 users are required to install and configure the EPEL repo. For more information on installing EPEL follow my EPEL installation tutorial.

For CentOS 7, RHEL7, or Fedora 20:

For Ubuntu 14:

Make sure we have required software that might not already be installed

Add the Ansible repository

Update packages

Install Ansible itself

Verify installation

Now that we have installed Ansible we can verify that it’s installed by getting the version

If the above command returns the Ansible version, then congratulations are in order as you have successfully installed the latest version of Ansible.