次の手順を使用して、RHELにpython3をインストールしようとしています。
yum search python3
No matches found for: python3
を返しました
に続く:
yum search python
Python3を含む検索結果はありませんでした。次に何を試すべきですか?
手動で簡単にインストールできます。
ダウンロード( Python.org の新しいリリースがあるかもしれません):
$ wget https://www.python.org/ftp/python/3.4.3/Python-3.4.3.tar.xz
Unzip
$ tar xf Python-3.*
$ cd Python-3.*
コンパイルを準備する
$ ./configure
構築する
$ make
インストール
$ make install
または、python
実行可能ファイルを上書きしたくない場合(少なくとも、いくつかのディストリビューションではyum
はRHEL6のようにpython
を2.xにする必要があります)-altinstall
を使用してpython3.*
を同時インスタンスとしてシステムデフォルトにインストールできます:
$ make altinstall
別のインストールディレクトリが必要な場合は、--prefix
をconfigure
commandに渡すことができます。
例:/ opt/localの「インストール」Pythonの場合は、--prefix=/opt/local
を追加するだけです。
make install
ステップの後:新しいPythonインストールを使用するには、[_ prefix]/binを$PATH
に、[prefix]/libを$LD_LIBRARY_PATH
に追加する必要があります(依存する場合があります)渡した--prefix
の)
一般に、RPMからのインストールの方が優れています。
Red HatはEPELリポジトリを介して追加しました:
Sudo yum install -y epel-release
Sudo yum install -y python34
# Install pip3
Sudo yum install -y python34-setuptools # install easy_install-3.4
Sudo easy_install-3.4 pip
pyvenv
を使用してvirtualenvを作成できます。
pyvenv /tmp/foo
CentOS7では、pip3.6
がパッケージとして提供されます:)
Sudo yum install -y epel-release
Sudo yum install -y python36 python36-pip
pyvenv
を使用してvirtualenvを作成できます。
python3.6 -m venv /tmp/foo
pyvenv
スクリプトを使用すると、警告が表示されます。
$ pyvenv-3.6 /tmp/foo
WARNING: the pyenv script is deprecated in favour of `python3.6 -m venv`
IUSコミュニティは、いくつかのRHELおよびCentOSの最新パッケージを提供しています。後ろの人はRackspaceから来ているので、彼らは非常に信頼できると思います...
ここで適切なリポジトリを確認してください:
https://ius.io/GettingStarted/
Sudo yum install -y https://centos6.iuscommunity.org/ius-release.rpm
Sudo yum install -y python36u python36u-pip
pyvenv
を使用してvirtualenvを作成できます。
python3.6 -m venv /tmp/foo
Sudo yum install -y https://centos7.iuscommunity.org/ius-release.rpm
Sudo yum install -y python36u python36u-pip
pyvenv
を使用してvirtualenvを作成できます。
python3.6 -m venv /tmp/foo
Geccoの答えに加えて、ステップ3を以下から変更します。
./configure
に:
./configure --prefix=/opt/python3
次に、インストール後に次のこともできます。
# ln -s /opt/python3/bin/python3 /usr/bin/python3
これは、yumでインストールされたpythonとインストールが競合しないようにするためです。
インターネットで見つけた説明を参照してください。
http://www.hosting.com/support/linux/installing-python-3-on-centosredhat-5x-from-source
here からRHEL6/CentOS6のソースRPMとバイナリRPMをダウンロードできます。
これは、最新のFedora開発ソースrpmからRHEL6/CentOS6へのバックポートです
SCLリポジトリを使用します。
Sudo sh -c 'wget -qO- http://people.redhat.com/bkabrda/scl_python33.repo >> /etc/yum.repos.d/scl.repo'
Sudo yum install python33
scl enable python27
(この最後のコマンドは、システムのデフォルトではなくpython27を使用するたびに実行する必要があります。)
Python 2.7および3.3に加えて、Red Hat Software CollectionsにはPython 3.4が含まれるようになりました-すべてがRHEL 6と7の両方で動作します。
RHSCL 2.0のドキュメントは https://access.redhat.com/documentation/en-US/Red_Hat_Software_Collections/ にあります
さらに、developerblog.redhat.comの多くの記事。
編集
# 1. Install the Software Collections tools:
yum install scl-utils
# 2. Download a package with repository for your system.
# (See the Yum Repositories on external link. For RHEL/CentOS 6:)
wget https://www.softwarecollections.org/en/scls/rhscl/rh-python34/epel-6-x86_64/download/rhscl-rh-python34-epel-6-x86_64.noarch.rpm
# or for RHEL/CentOS 7
wget https://www.softwarecollections.org/en/scls/rhscl/rh-python34/epel-7-x86_64/download/rhscl-rh-python34-epel-7-x86_64.noarch.rpm
# 3. Install the repo package (on RHEL you will need to enable optional channel first):
yum install rhscl-rh-python34-*.noarch.rpm
# 4. Install the collection:
yum install rh-python34
# 5. Start using software collections:
scl enable rh-python34 bash
Python3は最近、Python34としてEPEL7に追加されました。
EPEL7でPython3のパッケージを作成する方法に関するパッケージガイドラインを作成するための継続的な(現在の)取り組みがあります。
https://bugzilla.redhat.com/show_bug.cgi?id=1219411 を参照してください
and https://lists.fedoraproject.org/pipermail/python-devel/2015-July/000721.html
すべての答えは、コードからpython3をコンパイルするか、バイナリRPMパッケージをインストールするかのいずれかです。 EPEL(Enterprise Linux用の追加パッケージ)を有効にして、yumを使用してpythonをインストールする別の回答を次に示します。 RHEL 7.5(Maipo)の手順
yum install wget –y
wget https://dl.fedoraproject.org/pub/epel/7/x86_64/Packages/e/epel-release-7-11.noarch.rpm
rpm –ivh epel-*.rpm
yum install python36
link も参照してください
python 2.7を使用して同じ問題が発生していました。以下の手順に従って、3.6に正常にアップグレードします。これも試してみてください
バージョンをアップグレードする前に参照してください2.x
python --version
Python 2.7.5
以下のコマンドを使用して、pythonを3.xバージョンにアップグレードします-
yum install python3x
xを必要なバージョン番号に置き換えます。
つまり、python 3.6をインストールするために実行します
yum install python36
その後、このpythonをデフォルトバージョンに設定する場合は、bashrc file add
vi〜/ .bashrc
alias python='python3.6'
bashコマンドを実行して設定を適用します
bash
今、あなたは以下のバージョンを見ることができます
python --version
Python 3.6.3
RHELを使用していて、Red HatでサポートされているPythonが必要な場合は、Red Hat Softwareコレクション(RHSCL)を使用します。 EPELおよびIUSパッケージは、Red Hatではサポートされていません。また、上記の回答の多くは、CentOSソフトウェアコレクションを指しています。これらはインストールできますが、RHEL用のRed Hatがサポートするパッケージではありません。
また、トップ投票の回答は悪いアドバイスを与えます-RHELでは、yum
および他のRHEL管理ツールが壊れる可能性があるため、/usr/bin/python
、/usr/bin/python2
を変更する必要はありません。 /bin/yum
を見てください。これは#!/usr/bin/python
で始まるPythonスクリプトです。ソースからPythonをコンパイルする場合、ルートとしてmake install
を実行しないでください。それは/usr/bin/python
を上書きします。 yum
を壊すと、システムを復元するのが難しくなります。
詳細については、 RHELでPython 3、pip、venv、virtualenv、およびpipenvをインストールする方法 on developers.redhat.com を参照してください。 RHSCLからのPython 3のインストールと使用、Python仮想環境の使用、RHELでのソフトウェアコレクションの操作とPythonの操作に関するいくつかのヒントを説明します。
一言で言えば、Red Hat Software Collections経由でPython 3.6をインストールするには:
$ su -
# subscription-manager repos --enable rhel-7-server-optional-rpms \
--enable rhel-server-rhscl-7-rpms
# yum -y install @development
# yum -y install rh-python36
# yum -y install rh-python36-numpy \
rh-python36-scipy \
rh-python36-python-tools \
rh-python36-python-six
ソフトウェアコレクションを使用するには、有効にする必要があります。
scl enable rh-python36 bash
ただし、Python 3を永続的に有効にする場合は、〜/ .bashrcに次を追加してからログアウトして再度ログインすることができます。これで、Python 3が永続的にパスに追加されました。
# Add RHSCL Python 3 to my login environment
source scl_source enable rh-python36
注:これを行ったら、python
と入力すると、Python 2.7ではなくPython 3.6になります。
このすべておよび詳細については、上記の記事を参照してください。
Software Collections によるPython 3.5を使用した3つのステップ:
Sudo yum install centos-release-scl
Sudo yum install rh-python35
scl enable rh-python35 bash
最後のコマンドにはSudoは必要ないことに注意してください。 python 3が現在のシェルのデフォルトであることがわかります。
python --version
Python 3.5.1
現在のシェルのデフォルトとしてPython 2を使用する場合は、最後のコマンドをスキップします。
Python 3個のスクリプトが/usr/bin/env: python3: No such file or directory
のようなエラーを与えるとしましょう。これは通常、インストールが通常とは異なるパスで行われるためです。
/opt/rh/rh-python35/root/bin/python3
上記は通常シンボリックリンクです。起動時にすべてのユーザーのpython3
を$PATH
に自動的に追加する場合、これを行う1つの方法は、次のようなファイルを追加することです。
Sudo vim /etc/profile.d/rh-python35.sh
次のようになります:
#!/bin/bash
PATH=$PATH:/opt/rh/rh-python35/root/bin/
そして今、再起動後、私たちが行う場合
python3 --version
うまくいくはずです。 1つの例外は、シェルを持たないJenkinsサーバーで「jenkins」のような自動生成されたユーザーです。その場合、スクリプトで手動でパスを$PATH
に追加するのが1つの方法です。
最後に、パッケージをインストールするためにSudo pip3
を使用しているが、pip3が見つからない場合、secure_path/ etc/sudoersSudo visudo
で確認すると、それが確認されます。実行できるコマンドを実行するときに一時的に標準PATHを使用するには、次のようにします。
Sudo env "PATH=$PATH" pip3 --version
詳細については、 this questionを参照してください。
NOTE:Software Collectionsには新しいPython 3.6がありますが、現時点ではお勧めしません。 Pycurlをインストールしようとして、大きな頭痛がしました。 Python 3.5の場合、問題なく動作するのはSudo yum install sclo-python35-python-pycurl
でした。
Python3をインストールするための手順は次のとおりです。
yum install wget
wget https://www.python.org/ftp/python/3.6.0/Python-3.6.0.tar.xz
Sudo tar xvf Python-3.*
cd Python-3.*
Sudo ./configure --prefix=/opt/python3
Sudo make
Sudo make install
Sudo ln -s /opt/python3/bin/python3 /usr/bin/python3
$ /usr/bin/python3
Python 3.6.0
公式のRHELパッケージが必要な場合は、RHSCL(Red Hat Software Collections)を使用できます
詳細:
記事全文を読むには、Red Hatカスタマーポータルにアクセスする必要があります。
Amazon Linux上のRHELの場合、python3を使用しなければなりませんでした:
Sudo yum install python34-devel
yum install python34.x86_64
は、epel-release
がインストールされている場合に機能します。これは この回答 の説明であり、RHEL 7.3
で機能することを確認しました。
$ cat /etc/*-release
NAME="Red Hat Enterprise Linux Server"
VERSION="7.3 (Maipo)
$ type python3
python3 is hashed (/usr/bin/python3)
SCLが利用できない場合の完全な動作36(Joys入力に基づく)
yum install wget –y
wget https://dl.fedoraproject.org/pub/epel/7/x86_64/Packages/e/epel-release-7-11.noarch.rpm
rpm –ivh epel-*.rpm
yum install python36
Sudo yum install python34-setuptools
Sudo mkdir /usr/local/lib/python3.6
Sudo mkdir /usr/local/lib/python3.6/site-packages
Sudo easy_install-3.6 pip
最後に環境をアクティブにします...
pyvenv-3.6 py3
source py3/bin/activate
その後、python3
Miniconda( https://conda.io/miniconda.html )をインストールできます。これはpython 3.7だけではありませんが、インストールは非常に簡単で簡単です。
curl https://repo.anaconda.com/miniconda/Miniconda3-latest-Linux-x86_64.sh -O
Sudo yum install bzip2
bash Miniconda3-latest-Linux-x86_64.sh
ライセンス契約に同意し、インタラクティブモードでいくつかのオプションを選択する必要があります(デフォルトを受け入れます)。なんとなく静かにインストールできると思います。
AWS EC2 RHEL 7.5で作業している場合、(se Sudo)必要なリポジトリを有効にします
yum-config-manager --enable rhui-REGION-rhel-server-optional
yum-config-manager --enable rhui-REGION-rhel-server-rhscl
インストールPython 3.6
yum install rh-python36
他の依存関係をインストールする
yum install rh-python36-numpy rh-python36-scipy rh-python36-python-tools rh-python36-python-six