I need to install Python 3 for Ansible IT automation tool on RHEL 8. How do I install Python 3 on RHEL 8? Is it possible to install Python 2 for legacy apps on RHEL 8?
Red Hat Enterprise Linux (RHEL 8) does not install Python 3 or 2 by default as Red Hat didn’t want to set a default. However, system administrators can install Python 3 or 2 as per needs using various methods. This page shows how to install Python 3 or Python 2.7 on RHEL 8 using yum command.
Adblock detected 😱
How to Install Python 3 / Python 2.7 on RHEL 8
The procedure for installing Python 3 on RHEL 8 is as follows:
- Open the Terminal application or window.
- Search for python package in RHEL 8, run: sudo yum search python3
- To install python 3 on RHEL 8, run: sudo yum install python3
- To install python 2 on RHEL 8, run: sudo yum install python2
- Upgrade python 3 in RHEL 8, run: sudo yum upgrade python3
- Upgrade python 2 in RHEL 8, run: sudo yum upgrade python2
Let us see all commands and example in details.
How to find out Python package names on RHEL 8
Try any one of the following syntax along with grep command:
sudo yum search python3 | more
sudo yum search python2 | more
sudo yum search python36
sudo yum search python2 | grep 'python2.x86_64'
You can show detailed information before installing package as well:
sudo yum info python2.x86_6
sudo yum info python36
RHEL 8 install Python 3
Type the following yum command to install Python 3 on Red Hat Enterprise Linux version 8:
sudo yum install python3
OR
sudo yum module install python36
Verify installation by typing the type command/command command:
type -a python3$
command -V python3
python3 is /usr/bin/python3
$
python3 –version
python3 is hashed (/usr/bin/python3)
$
Python 3.6.6
A sample script in Python 3
Create a file named test.py:
#!/usr/bin/python3 import os, time print("This is a test code for Python3") print("Hello %s, let us be friends!" % os.environ["USER"]) print("Today is %s" % time.strftime("%c")) |
#!/usr/bin/python3
import os, time
print(“This is a test code for Python3”)
print(“Hello %s, let us be friends!” % os.environ[“USER”])
print(“Today is %s” % time.strftime(“%c”))
Run it as follows:
$ chmod +x test.py
$ ./test.py
A note for Ansible users
Set up your hosts file as follows on your control node to use Ansible as automation tool for RHEL 8 server:
[all:vars] ansible_user=vivek ansible_port=22 ansible_python_interpreter='/usr/bin/env python3' |
[all:vars]
ansible_user=vivek
ansible_port=22
ansible_python_interpreter=’/usr/bin/env python3′
Now run it as usual:
ansible-playbook -i hosts tasks/7-secure-rhel8-vm.yml
RHEL 8 install Python 2
Let us see how to install Python 2.7 on RHEL 8:
sudo yum install python27
OR
sudo yum module install python27
Let us find out information about installed version of Python 2.7 in RHEL 8:
$ type -a python2
$ command -V python2
$ python2 --version
Can I install both Python 3.6 and Python 2.7 on RHEL 8?
Yes. It is possible to install both versions simultaneously:
sudo yum module install python36 python27
Sample outputs:
Updating Subscription Management repositories. Updating Subscription Management repositories. Last metadata expiration check: 0:09:22 ago on Tuesday 05 March 2019 02:09:48 PM EST. Dependencies resolved. ======================================================================================== Package Arch Version Repository Size ======================================================================================== Installing group/module packages: python36 x86_64 3.6.6-17.el8+2102+a4bbd900 rhel-8-for-x86_64-appstream-beta-rpms 22 k python2 x86_64 2.7.15-15.el8+2103+c6cdb4cb rhel-8-for-x86_64-appstream-beta-rpms 106 k python2-pip noarch 9.0.3-10.el8+2056+8b2f0fde rhel-8-for-x86_64-appstream-beta-rpms 2.0 M python2-setuptools noarch 39.0.1-10.el8+1958+74bcdd68 rhel-8-for-x86_64-appstream-beta-rpms 643 k python2-libs x86_64 2.7.15-15.el8+2103+c6cdb4cb rhel-8-for-x86_64-appstream-beta-rpms 6.0 M Installing module profiles: python27/default python36/default Transaction Summary ======================================================================================== Install 5 Packages Total download size: 8.7 M Installed size: 36 M Is this ok [y/N]: |
Updating Subscription Management repositories.
Updating Subscription Management repositories.
Last metadata expiration check: 0:09:22 ago on Tuesday 05 March 2019 02:09:48 PM EST.
Dependencies resolved.
========================================================================================
Package Arch Version Repository Size
========================================================================================
Installing group/module packages:
python36
x86_64 3.6.6-17.el8+2102+a4bbd900 rhel-8-for-x86_64-appstream-beta-rpms 22 k
python2 x86_64 2.7.15-15.el8+2103+c6cdb4cb rhel-8-for-x86_64-appstream-beta-rpms 106 k
python2-pip
noarch 9.0.3-10.el8+2056+8b2f0fde rhel-8-for-x86_64-appstream-beta-rpms 2.0 M
python2-setuptools
noarch 39.0.1-10.el8+1958+74bcdd68 rhel-8-for-x86_64-appstream-beta-rpms 643 k
python2-libs
x86_64 2.7.15-15.el8+2103+c6cdb4cb rhel-8-for-x86_64-appstream-beta-rpms 6.0 M
Installing module profiles:
python27/default
python36/default Transaction Summary
========================================================================================
Install 5 Packages Total download size: 8.7 M
Installed size: 36 M
Is this ok [y/N]:
How do I set default version of Python on RHEL 8?
One can set Python 3 as default by running the simple command:
sudo alternatives --set python /usr/bin/python3
python --version
Sample outputs:
Python 3.6.6
Similarly one can set Python 2 as default version for RHEL 8 based desktop or server environment from the bash shell:
sudo alternatives --set python /usr/bin/python2
python --version
How do I remove python default on RHEL 8?
The syntax is simple:
sudo alternatives --remove python /usr/bin/python2
OR
sudo alternatives --remove python /usr/bin/python3
Conclusion
This page showed how to install Python 3.6 or Python 2.7 on RHEL 8 using the yum command. For more information please see this page here and here.
[ad_2]