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

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

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

【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  --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をインストールする際は参考にしてください。




エンジニアのオンライン学習

ITエンジニアにおすすめの教材、オンラインスクールです。
無料からエンジニアの学習ができる教材などまとめているので参考にしてください。

おすすめオンライン教材
自宅で学習ができるオンラインスクール

ITエンジニアの開発・検証・学習としてインターネット上で専用のサーバ(VPS)を利用しましょう!
実務経験はVPSで学べます。



コメントを残す

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

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

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