Python開発の勉強(2) CentOS7へPython3のインストール

はじめに

前回、Pythonを動かすための開発環境サーバをVagrantで作成しました。

今回は、開発環境サーバへPython3のインストールを行います。

なお、CentOS7にはPython2がインストールされています。標準リポジトリにもPython2のみ存在します。
しかし、世の中的には現行バージョンのPython3が主流となっています。
そのため、新たにPython3をインストールし、2つのバージョンを同居させる方針とします。

前提条件

  • 開発環境サーバは、CentOS 7.6.1810を使用します。
  • インストールするPythonは、IUSリポジトリ版のPython 3.6.8を使用します。
  • 作業は、rootユーザで実施します。

開発環境サーバへのログイン

まずは、作業端末から開発環境サーバへログインします。

$ cd ~/vagrant/centos7
$ pwd
/Users/user01/vagrant/centos7
$ vagrant ssh

IUSリポジトリの追加

Python3系のRPMをインストールできるよう、IUSリポジトリを追加します。
EPELリポジトリが未追加の場合、この時合わせて追加されます。

# yum -y install https://centos7.iuscommunity.org/ius-release.rpm

(略)

Dependencies Resolved

==============================================================================================================================
Package                        Arch                     Version                         Repository                      Size
==============================================================================================================================
Installing:
ius-release                    noarch                   2-1.el7.ius                     /ius-release                   4.5 k
Installing for dependencies:
epel-release                   noarch                   7-11                            extras                          15 k

Transaction Summary
==============================================================================================================================
Install  1 Package (+1 Dependent package)

(略)

Installed:
ius-release.noarch 0:2-1.el7.ius

Dependency Installed:
epel-release.noarch 0:7-11

Complete!

Pythonパッケージインストール

Python本体と、関連するパッケージをインストールします。
IUSリポジトリのPython3.6パッケージをインストールする場合、パッケージ名はpython36uとなります。

# yum -y install python36u python36u-devel python36u-pip

(略)

Dependencies Resolved

==============================================================================================================================
Package                               Arch                    Version                             Repository            Size
==============================================================================================================================
Installing:
python36u                             x86_64                  3.6.8-1.el7.ius                     ius                   58 k
python36u-devel                       x86_64                  3.6.8-1.el7.ius                     ius                  841 k
python36u-pip                         noarch                  9.0.1-1.ius.el7                     ius                  1.8 M
Installing for dependencies:
python36u-libs                        x86_64                  3.6.8-1.el7.ius                     ius                  8.9 M
python36u-setuptools                  noarch                  39.0.1-1.ius.el7                    ius                  643 k

Transaction Summary
==============================================================================================================================
Install  3 Packages (+2 Dependent packages)

(略)

Installed:
python36u.x86_64 0:3.6.8-1.el7.ius    python36u-devel.x86_64 0:3.6.8-1.el7.ius    python36u-pip.noarch 0:9.0.1-1.ius.el7

Dependency Installed:
python36u-libs.x86_64 0:3.6.8-1.el7.ius                    python36u-setuptools.noarch 0:39.0.1-1.ius.el7

Complete!

バージョン確認

インストールしたPythonのバージョン確認を行います。
Python3は、Python2と区別するためにコマンド名にもバージョンを付ける必要があるので注意してください。
下記のように表示されればインストール完了です。

# python3.6 --version
Python 3.6.8

バージョン同居の注意事項

今回の作業で、システム上にはPython2とPython3の2バージョンが同居することになります。
CnetOS7に標準でインストールされているPython2は、yumなどのシステム上で使用するコマンドと依存関係があります。
そのため、Python3の実行コマンドをシンボリックリンクでpythonとしたり、Python2を削除しないようにしてください。
前述の行為をしてしまうと、システムが正常に動作しなくなります。

まとめ

CentOS7上に、Python3をインストールしました。

  • CentOS7は標準でPython2がインストールされているので、新たにPython3をインストールする必要があります。
  • Python3は、IUSリポジトリからインストールします。
  • CentOSのシステム処理にはPython2が使われているので、Python3をインストールした後もPython2は削除してはいけません。

コメントを残す

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