【CentOS8】Python3インストールと実行


CentOS8へのPythonインストール手順をまとめました。
CentOS7と同じようなインストール時のパッケージではないので、注意してください。

CentOS7のPythonインストール手順は以下を参考にしてください。

【Python】インストールと起動(Linux系)

2020年1月21日

【Python】CentOS8(Linux系)でのインストール手順

CentOS8対応の最新のPythonバージョン3のインストールを実施します。

CentOS8の現時点でのバージョンは以下となります。

CentOS Linux release 8.1.1911 (Core)

yum installはネット環境にアクセスできる状態でないと実行できないので、通信状態を事前に確認しておきましょう。
とりあえず、「8.8.8.8」(DNS)へPingを飛ばして通信ができることができればよいかと思います。

「IUS Community Project」インストール

Pythonバージョン3をインストールするために「IUS Community Project 」の yum リポジトリをインストールします。
参照元:https://ius.io/setup

ただ、現時点ではCentOS7までしかなかったので、CentOS7のプロジェクトをインストールします。

以下の1行目のコマンドを実行し、「IUS Community Project」をインストールします。
正常にインストールが実行されると以下のようになります。

$ yum install -y https://centos7.iuscommunity.org/ius-release.rpm --nobest --skip-broken
Last metadata expiration check: 0:00:20 ago on Tue 10 Mar 2020 01:19:47 PM JST.
ius-release.rpm                                  16 kB/s | 8.2 kB     00:00
Dependencies resolved.

 Problem: conflicting requests
  - nothing provides epel-release = 7 needed by ius-release-2-1.el7.ius.noarch
================================================================================
 Package            Architecture  Version             Repository           Size
================================================================================
Skipping packages with broken dependencies:
 ius-release        noarch        2-1.el7.ius         @commandline        8.2 k

Transaction Summary
================================================================================
Skip  1 Package

Nothing to do.
Complete!

インストール後、以下のコマンドでリポジトリが作成されたことを確認します。
※ないっすねw CentOS7のリポジトリなので利用できないのかもしれません。

$ ls -l /etc/yum.repos.d
total 76
-rw-r--r--. 1 root root  731 Jan  3 00:21 CentOS-AppStream.repo
-rw-r--r--. 1 root root  712 Jan  3 00:21 CentOS-Base.repo
-rw-r--r--. 1 root root  798 Jan  3 00:21 CentOS-centosplus.repo
-rw-r--r--. 1 root root 1043 Jan  3 00:21 CentOS-CR.repo
-rw-r--r--. 1 root root  668 Jan  3 00:21 CentOS-Debuginfo.repo
-rw-r--r--. 1 root root  756 Jan  3 00:21 CentOS-Extras.repo
-rw-r--r--. 1 root root  338 Jan  3 00:21 CentOS-fasttrack.repo
-rw-r--r--. 1 root root  738 Jan  3 00:21 CentOS-HA.repo
-rw-r--r--. 1 root root  928 Jan  3 00:21 CentOS-Media.repo
-rw-r--r--. 1 root root  736 Jan  3 00:21 CentOS-PowerTools.repo
-rw-r--r--. 1 root root 1382 Jan  3 00:21 CentOS-Sources.repo
-rw-r--r--. 1 root root   74 Jan  3 00:21 CentOS-Vault.repo
-rw-r--r--  1 root root 2424 Mar  9 14:42 docker-ce.repo
-rw-r--r--  1 root root 1167 Dec 19 01:08 epel-modular.repo
-rw-r--r--  1 root root 1249 Dec 19 01:08 epel-playground.repo
-rw-r--r--. 1 root root 1206 Feb 14 21:28 epel.repo
-rw-r--r--  1 root root 1104 Dec 19 01:08 epel.repo.rpmnew
-rw-r--r--  1 root root 1266 Dec 19 01:08 epel-testing-modular.repo
-rw-r--r--  1 root root 1203 Dec 19 01:08 epel-testing.repo

ここは、無視してPythonのインストールへ進みます。


CentOS8で「Python」インストール

リポジトリからPythonのインストールが可能なバージョンを確認します。
Python3.7、3.8は以下のように「一致するものが見つかりません」と警告が表示され確認できません。

$ yum search python37
Last metadata expiration check: 0:23:52 ago on Tue 10 Mar 2020 11:08:04 AM JST.
No matches found.
$

結果的に現時点(2020/1/21)でインストールが可能なのはバージョン3.6となっています。

$ yum search python36

【注意】CentOS8でPythonがインストールできない場合

CentOS7と同じように以下のインストールをするとエラーが発生します。

$ yum install -y python36u python36u-libs python36u-devel python36u-pip
Last metadata expiration check: 0:19:37 ago on Tue 10 Mar 2020 11:08:04 AM JST.
No match for argument: python36u
No match for argument: python36u-libs
No match for argument: python36u-devel
No match for argument: python36u-pip
Error: Unable to find a match: python36u python36u-libs python36u-devel python36u-pip

これは該当のパッケージがないということでエラーが発生しています。

上記「yum search」で「yum search python36」のリストからインストール可能なパッケージを探しだして再度インストールを実施します。

【CentOS8】Pythonインストールコマンド

CentOS8で最新版のPythonをインストールするコマンドは以下となります。
※2020/3/10時点動作確認済み(CentOS8)

yum install -y python36 python3-libs.x86_64 python36-devel python3-pip.noarch

※エラーが出る場合はひとつづつインストールし、「yum search」で該当するパッケージをインストールしましょう。少しパッケージ名が変わってたりします。

パッケージを意識せずに簡単にインストールしたい方は以下のコマンドでOKです。

$ yum -y install python3

Pythonインストール後の確認

正常にインストールができた場合は以下のコマンドでバージョン情報を確認します。

$ python3 --version
Python 3.6.8
$
$ python3 -V
Python 3.6.8
$

また、「which」コマンドでインストールしたPythonのパスを確認します。

$ which python3.6
/usr/bin/python3.6

$ which python3
/usr/bin/python3

Pythonインストール後のアップデート

次にPython3の「pip」コマンドをアップデートします。

$ python3 -m pip install --upgrade pip

以下でバージョンが最新になっていることを確認します。

$ python3 -m pip -V
pip 20.0.2 from /usr/local/lib/python3.6/site-packages/pip (python 3.6)

「CentOS8」でPython3を実行する

手動でPythonが動作するか確認するため、「python3」コマンドを実行します。

5行目でprint()関数を実行し、正常に文字列が出力できることを確認します。

$ python3
Python 3.6.8 (default, Nov 21 2019, 19:31:34)
[GCC 8.3.1 20190507 (Red Hat 8.3.1-4)] on linux
Type "help", "copyright", "credits" or "license" for more information.
>>> print('Hello_Python')
Hello_Python
>>>

Python3でファイルからプログラムを実行

pythonプログラムのファイルを作成し、ファイルを呼び出し実行します。

vi(vim)コマンドでファイルを編集しますが、お勧めはvimなので、事前にvimコマンドはyumインストールしておきます。

$ yum -y install vim
Last metadata expiration check: 0:00:35 ago on Tue 10 Mar 2020 11:08:04 AM JST.
Package vim-enhanced-2:8.0.1763-13.el8.x86_64 is already installed.
Dependencies resolved.
Nothing to do.
Complete!

次に「touch」コマンドでファイルを作成します。
「ls」コマンドでファイルが作成されていることを確認します。

$ touch test.py
$
$ ls
test.py

次に作成したファイルの中身を編集します。

$ vim test.py

以下でtest.pyを編集します。
入力は「i」キーを押して以下、プログラムを作成します。

print('Hello_Python')

作成した後は、必ず以下手順で保存しましょう。
#エスケープ(Esc)で編集モードを終了し、以下コマンドで書き込みと編集を終了

:wq

最後に以下コマンドでファイルを指名し、プログラムが実行できればOKです。

$ python3 test.py
Hello_Python
$

CentOS8へPythonをインストールする際は参考にしてください。


関連記事


コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

日本語が含まれない投稿は無視されますのでご注意ください。(スパム対策)

ABOUTこの記事をかいた人

blank

インターネット関連のSEをやっています。 ネットワーク、サーバー、ストレージ、仮想基盤まで幅広く手を出しており、MVNOの構築経験もあります。 現在は、Pythonを使ったプログラミングの開発をしネットワークの自動化ツールを作成しています! Pythonの入門書も作成しているので、ぜひ参考にしてください!