ステータス:非推奨

この記事では、サポートされなくなったバージョンのCentOSについて説明します。 現在CentOS6を実行しているサーバーを運用している場合は、サポートされているバージョンのCentOSにアップグレードまたは移行することを強くお勧めします。

理由 CentOS 6は2020年11月30日に保守終了(EOL)に達し、セキュリティパッチまたはアップデートを受信しなくなりました。 このため、このガイドは維持されなくなりました。

代わりに参照:このガイドは参照として役立つ場合がありますが、他のCentOSリリースでは機能しない場合があります。 可能な場合は、使用しているCentOSのバージョン用に作成されたガイドを使用することを強くお勧めします。

次のチュートリアルは、Python 3、およびpipvirtualenvをCentOS7サーバーにインストールする方法の概要を示しているので興味深いかもしれません。

序章


多くの場合、開発者は、アプリケーションが実行されるサーバーをある程度管理する責任があります。 特に本番用のオペレーティングシステムを選択する場合、CentOSなどの適切な選択を行うことは、将来の魅力的な(安全な)賭けになる可能性があります。

ただし、CentOSを使い始めると、Pythonがまだバージョン2.6(または2.4.3)であり、システムで使用するために予約されているかどうかに関係なく、デプロイされたアプリケーションで使用しないでください。

このDigitalOceanの記事では、システムのデフォルトの2.6(または2.4)を壊さずに、Python(2.7.6および3.3.3)をダウンロードしてセットアップする方法について説明します。 YUMなどの重要なシステムツールがそれに依存しているため、これに関与しないことがかなり重要です。 さらに、2つの人気のある必須のPythonコンパニオンpipとvirtualenvをインストールします。

完了すると、CentOS6.4または5.8VPSでPythonのいずれかのバージョンを同時に使用し、仮想環境を作成して使用し、最後に、各バージョンのPythonパッケージをダウンロードして管理できるようになります。

CentOSとそのデザインの選択


インストールを始める前に、CentOSについて話しましょう。

CentOSに古いバージョンのアプリケーションが付属しているのはなぜですか?

CentOSは、RHEL(Red Hat Enterprise Linux)から派生しています。 これら2つのディストリビューションのターゲット顧客はビジネスで構成されており、システムが長年にわたって最も安定した方法で稼働している必要があります。

したがって、ここでの主な理由は、テスト済みのより安定したバージョンのアプリケーションを提供することによって達成される、システムの安定性に対する要望です。 「壊れていない場合は修正しないでください」の背後にある哲学がここに大きく適用されています。

デプロイメントライブラリ/アプリケーションを個別にインストールする必要があるのはなぜですか?

CentOSにはデフォルトで多くのツールが付属しておらず、提供されているツールはシステムアプリケーションによって使用されます(例: YUM )。 現在も将来も何も壊さずにシステムをスムーズに実行し続けたい場合は、それらまたはそれらの依存関係を変更または変更する前に細心の注意を払う必要があります。

オペレーティングシステムに付属しているツールが自分用であると思い込まないでください。必要なものをすべて自分でセットアップする習慣をつけてください。

このわかりやすいチュートリアルを使用すると、任意のバージョンのPythonを使用できるようになります。また、他のほとんどすべてのアプリケーション(ソースから)をインストールする方法も説明します。

システムの準備とPythonのインストール


遭遇する他の多くのアプリケーションと同様に、CentOSへのPythonのインストールは、システムの更新から始まり、実際に任意のバージョンのPythonを取得してセットアッププロセスに進む、いくつかの(単純な)段階で構成されます。

覚えておいてください: リリースページをチェックすると、Pythonの利用可能なすべてのリリースを確認できます。 ここの手順を使用すると、それらの一部またはすべてをインストールできるはずです。

注:このガイドは、CentOSバージョン6.5、および5.8と6.4で有効である必要があります。

デフォルトのCentOSアプリケーションの更新


インストールを開始する前に、デフォルトのシステムアプリケーションを更新して、最新バージョンを利用できるようにしてください。

次のコマンドを実行して、システムアプリケーションをupdateします。

yum -y update

開発インストール用のシステムの準備


CentOSディストリビューションは無駄がなく、おそらく少しあまりにも無駄があります。つまり、必要になる可能性のある人気のあるアプリケーションやツールの多くが付属していません。

これは意図的な設計上の選択です。 ただし、インストールには、いくつかのライブラリとツールが必要になります(つまり、 開発[関連]ツール)はデフォルトでは出荷されていません。 したがって、続行する前に、それらをダウンロードしてインストールする必要があります。

パッケージマネージャーyumを使用して、システムで開発ツールを入手するには、次の2つの方法があります。

オプション#1 (非推奨)は、これらのツールのダウンロードで構成されます(例: make、gccなど)1つずつ。 その後、何かを開発しようとし、途中でエラーが発生する可能性が非常に高くなります。別のパッケージを忘れてしまったため、ダウンロードに戻ることになります。

これを行うための推奨される適切な方法は、オプション#2 に従うことです。yumソフトウェアグループを使用して、1つのコマンドで多数のツールをダウンロードするだけです。

YUMソフトウェアグループ

YUMソフトウェアグループは、一般的に使用されるツール(アプリケーション)の束で構成されており、1つのコマンドを実行し、グループ名を指定することで、すべて同時にダウンロードできます。 YUMを使用すると、複数のグループを一緒にダウンロードすることもできます。

問題のグループは開発ツールです。

CentOSでYUMを使用して開発ツールをインストールする方法

必要な開発ツールを入手するには、次のコマンドを実行します。

yum groupinstall -y development

また;

yum groupinstall -y 'development tools'

注:以前の(短い)バージョンは、CentOSの古いディストリビューションでは機能しない可能性があります。

便利な追加パッケージをダウンロードするには:

yum install -y zlib-dev openssl-devel sqlite-devel bzip2-devel

覚えておいてください:オプションですが、これらの「便利な」ツールは、将来遭遇するほとんどのタスクに非常に必要です。 それらが事前にインストールされていない限り、Pythonはコンパイル中にそれらにリンクすることができません。

ソースからのPythonインストール手順


システムでのPythonのセットアップは、3つのステージと4つのツールで構成されます。

  1. ダウンロード圧縮ソースコードパッケージ(wget)、
  2. このパッケージ(tar)からのファイルの抽出
  3. アプリケーションの構成および構築(autoconf(構成)/ make)。

GNU wget

GNUの「wget」は、さまざまなプロトコル(HTTP、FTPなど)を介してファイルをダウンロードするために使用されるアプリケーションです。 CentOSの古いバージョンにはありませんが、デフォルトで提供されるようになりました。

wget の使用例:wget [URL]

GNU Tar

GNUのTarは、基本的にファイルアーカイブの作成および操作ツールです。 利用可能なさまざまなオプションを使用して、圧縮パッケージを作成したり、後でそれらを抽出したりすることができます。

tar の使用例:tar [options] [arguments]

GNUautoconfとGNUmake

GNU autoconfmakeは、アプリケーションをビルドしてインストールする前にソースコードを構成するために(ほとんど)一緒に使用される2つの異なるツールです。

私達はします:

  • ./configure を使用して、インストール前にすべてを構成します
  • 前にmakeを使用してライブラリとソースを接続します
  • make install (この場合はaltinstall)を使用して、ソースコードをビルド(コンパイル)してバイナリファイルを作成し、./configureを使用して構成されたシステムにアプリケーションをインストールします。

autoconf の詳細については、そのマニュアルを読むことを検討してください。

make の詳細については、そのマニュアルを読むことを検討してください。

Pythonのダウンロード、ビルド(コンパイル)、インストール


このセクションでは、与えられたすべての手順を使用して、任意のバージョンのPythonをダウンロードできます。 記載されているバージョン(以下の例では「2.7.6」)を必要なバージョン(例: 「3.3.3」)。 複数のバージョンを同時にインストールして使用できます。 ただし、実行中にバージョンを指定する必要があります(つまり、 pythonの代わりに、python2.7またはpython3.3を使用する必要があります)。

ソースアーカイブのダウンロード

Pythonソースコードを含む(圧縮された)アーカイブの取得から始めましょう。 --version 2.7.6をターゲットにします。

wget http://www.python.org/ftp/python/2.7.6/Python-2.7.6.tar.xz

バージョン3.3.3の例:

wget http://www.python.org/ftp/python/3.3.3/Python-3.3.3.tar.xz

[オプションの手順]XZツール:

このファイルはXZライブラリを使用して圧縮されています。 システムによっては、バージョンによってはそれがない場合があります。 その場合は、以下を実行してXZライブラリをインストールします。

 yum install xz-libs

圧縮されたソースアーカイブの抽出

このプロセスは2つのステップで構成されます。最初にXZアーカイブをデコードし、次にtarを抽出します。

# Let's decode (-d) the XZ encoded tar archive:
xz -d Python-2.7.6.tar.xz


# Now we can perform the extraction:
tar -xvf Python-2.7.6.tar

バージョン3.3.3の例:

xz -d Python-3.3.3.tar.xz
tar -xvf Python-3.3.3.tar

構成とインストール

—ソースを構築する前に、すべての依存関係が存在することを確認し、環境を準備する必要があります。 これは、./configureを使用してタスクを処理することで自動的に実現されます。

# Enter the file directory:
cd Python-2.7.6

# Start the configuration (setting the installation directory)
# By default files are installed in /usr/local.
# You can modify the --prefix to modify it (e.g. for $HOME).
./configure --prefix=/usr/local    

バージョン3.3.3の例:

cd Python-3.3.3    
./configure

必要なツールとアプリケーションをすべてダウンロードしたので、この手順は問題なく実行できます。 完了すると、次のステップであるビルドとインストールに進む準備が整います。

構築とインストール

—作業中のシステムのすべてを構成した後、ソースのビルド(コンパイル)とアプリケーションのインストールを続行できます。 通常、「makeinstall」を使用します。 ただし、システムのデフォルトを上書きしないようにするため、つまりシステムですでに使用されているPythonを置き換えるために、make altinstallを使用します。

# Let's build (compile) the source
# This procedure can take awhile (~a few minutes)
make

# After building everything:
make altinstall

バージョン3.3.3の例:

make && make altinstall   # <--- Two commands joint together

[オプションの手順]新しいPythonインストール場所をPATHに追加する

注:デフォルト設定を使用して指示に従った場合は、このセクションを実行する必要はありません。 ただし、Pythonをインストールするために / usr / local とは異なるパスを選択した場合、完全な[インストールを明示せずに実行できるようにするには、次の手順を実行する必要があります。 ]パス毎回

インストールが完了すると、生成されたバイナリにアクセスできます(つまり、 選択したバージョンのPythonインタープリター)完全な場所(パス)を指定するだけです(例: /usr/local/bin/python2.7)-もちろん、パスがPATH変数にすでに存在する場合を除きます(つまり、 指示する変数には、指定されたファイルを探す場所に関する情報が含まれています)。

新しくインストールされたPythonインタープリターに、検索する場所を毎回明示的に指定せずにアクセスできるようにするには、そのpathPATH変数に追加する必要があります。

# Example: export PATH="[/path/to/installation]:$PATH"
export PATH="/usr/local/bin:$PATH"

PATHの詳細については、LinuxInformationProjectのPATH定義を読むことを検討してください。

一般的なPythonツールの設定pipとvirtualenv


Pythonをインストールしたら、アプリケーションの作成とデプロイの基本を完了することができます。 このために、最も一般的に使用される2つのツール、pipパッケージマネージャーとvirtualenv環境マネージャーをセットアップします。

これら2つのツールの詳細に興味がある場合、または知識をすばやく更新する場合は、一般的なPythonツール:virtualenvの使用、Pipを使用したインストール、およびパッケージの管理を読むことを検討してください。

新しいPythonインストールを使用したCentOSへのpipのインストール


pipをインストールする前に、その唯一の外部依存関係( setuptools)を取得する必要があります。

virtualenvとpipに関する記事から:

[setuptools]は、distutilsと呼ばれるPythonの配布ユーティリティツールセットの(標準)機能に基づいています。 distilsがデフォルトで提供されていることを考えると、必要なのはsetuptoolsだけです。

次のコマンドを実行して、setuptoolsをインストールします。

これにより、バージョン2.7.6にインストールされます

# Let's download the installation file using wget:
wget --no-check-certificate https://pypi.python.org/packages/source/s/setuptools/setuptools-1.4.2.tar.gz

# Extract the files from the archive:
tar -xvf setuptools-1.4.2.tar.gz

# Enter the extracted directory:
cd setuptools-1.4.2

# Install setuptools using the Python we've installed (2.7.6)
python2.7 setup.py install

pip自体のインストールは、その後の非常に簡単なプロセスです。 上記の記事の手順を使用して、cURLライブラリを使用して自動的かつ安全にダウンロードおよびインストールします。

注: cURLの詳細については、ここで説明されているセクションを参照してください。

pip のセットアップファイルをダウンロードして、Python(2.7)にインストールしてもらいましょう。

これにより、バージョン2.7.6にインストールされます

curl https://raw.githubusercontent.com/pypa/pip/master/contrib/get-pip.py | python2.7 -

pipの使用方法については、一般的なPythonツール:virtualenvの使用、Pipを使用したインストール、およびパッケージの管理に関する記事を参照してください。

新しいPythonインストールを使用したCentOSへのvirtualenvのインストール


パッケージマネージャーの準備ができたので、システムでvirtualenvを取得するのは簡単です。

次のコマンドを実行して、virtualenvをダウンロードしてインストールします。

pip install virtualenv

virtualenvの使用方法については、一般的なPythonツール:virtualenvの使用、Pipを使用したインストール、およびパッケージの管理に関する記事を参照してください。

投稿者: https ://twitter.com/ostezer