さくらVPSにPython2系と並存する3系をインストールする

Todays latte, Python.

オンライン上でプログラミング言語たるPythonをいろいろ弄ってみるのも面白いでしょうし、 孰れWebサービスを拵える、という目論みもあったりなかったり、 と言う訳で手元で管理しているさくらインターネットのVPSサーバーにPythonをインストールしてみました。 其の時の作業ログを備忘録で残しておきます。 因みにサーバーのOSはCentOS 5.9です。

Python2系と3系

2013年10月現在となっても未だ悩ましいのがPythonのバージョンです。 大分バージョン3系も使われるようになってきましたが、 後方互換性を大きく切り捨てたこともあり、 モジュールの対応もあってまだまだバージョン2系が多く使われているようです。 此処は最新のバージョン3系を採用したい処ですが、 ただlinuxディストリビューションでは通常バージョン2系が標準でインストールされており、 パッケージ管理が依存していますから、 普通にアップデートしてしまうと問題が発生する可能性が高くなります。

両バージョンを並存させる

スポンサーリンク

従って出来ればバージョン2系と3系を並存させたい処です。 其の方法としては2種類あるようです。

一つは新規Python3系のインストール時にオプションとして --prefix でインストールディレクトリを指定する prefixスキーム があります。

もう一つは altinstall コマンドを利用する方法で、今回はお手軽な此方を採用してみました。

標準インストールされたPythonのバージョンを調べる

現在インストールされているPythonのバージョンは -V 若しくは --version オプションで調べられます。

$ python -V
Python 2.4.3

標準インストールされたPythonのディレクトリも見ておきます。

$ sudo find / -name python2*
/usr/bin/python2
/usr/bin/python2.4
/usr/lib/python2.4
/usr/local/src/Python-3.3.2/PC/VS7.1/python20.wse
/usr/include/python2.4
/usr/lib64/python2.4

事前の準備

念の為サーバーのアップデートをします。

$ sudo yum check-update
$ sudo yum update

CentOSのパッケージ管理のyumではバージョン2系の古いものしかリポジトリに用意されていない為、 今回ソースをダウンロードしてbuildしますので、 gccやautomakeなど開発環境が必要です。 Development Toolsが用意されていなければインストールする必要があるでしょう。

$ sudo yum groupinstall "Development Tools"

Pythonのダウンロード

Pythonを下のサイトからダウンロードします。

Python Releases

2013年10月1日時点ではバージョン3系の最新版が Python 3.3.2 、バージョン2系の最新版が Python 2.7.5 となっています。 作業領域にディレクトリを移動しダウンロードして解凍します。

$ cd /usr/local/src/
$ sudo wget http://www.python.org/ftp/python/3.3.2/Python-3.3.2.tgz
$ sudo tar -xvzf Python-3.3.2.tgz

Pythonのbuild

例に依って、configure、make、make installしますが、 此処でバージョンを並存させる為に上でも書いたようにmake installではなく make altinstall します。

$ cd Python-3.3.2
$ sudo ./configure
$ sudo make
$ sudo make test
$ sudo make altinstall

新規インストールしたPythonのバージョン確認

インストールが首尾良く運んだらバージョンを確認します。 但しPythonは2系統インストールされている筈ですので Pythonコマンドを用いると古いバージョンが表示されます。 新規インストールしたバージョンを見るには Python3.3 とします。

$ python -V
Python 2.4.3
$ python3.3 -V
Python 3.3.2

新規インストールしたPythonのディレクトリ確認

標準インストールされたPythonのディレクトリを再度確認すれば 新規Pythonインストール後も其の儘保存されている筈です。 併せて新規インストールしたバージョン3系Pythonのディレクトリも確認しておきます。

$ sudo find / -name python3*
/usr/local/bin/python3.3
/usr/local/bin/python3.3m
/usr/local/bin/python3.3m-config
/usr/local/lib/python3.3
/usr/local/include/python3.3m
/usr/local/share/man/man1/python3.3.1
使用写真
  1. Today's latte, Python.( photo credit: Yuko Honda via Flickr cc