
一部のシステムをCassandra 3.xにアップグレードしようとしています。インストーラにはPython(abi)> = 2.7が必要なのでインストールしました。続いて、次のエラーが表示されます。
Resolving Dependencies
--> Running transaction check
---> Package dsc30.noarch 0:3.0.1-1 will be installed
--> Processing Dependency: cassandra30 = 3.0.1 for package: dsc30-3.0.1-1.noarch
--> Processing Dependency: python(abi) >= 2.7 for package: dsc30-3.0.1-1.noarch
--> Running transaction check
---> Package cassandra30.noarch 0:3.0.1-1 will be installed
--> Processing Dependency: python(abi) >= 2.7 for package: cassandra30-3.0.1-1.noarch
---> Package dsc30.noarch 0:3.0.1-1 will be installed
--> Processing Dependency: python(abi) >= 2.7 for package: dsc30-3.0.1-1.noarch
--> Finished Dependency Resolution
Error: Package: dsc30-3.0.1-1.noarch (datastax)
Requires: python(abi) >= 2.7
Installed: python-2.6.6-64.el6.x86_64 (@base-local)
python(abi) = 2.6
Error: Package: cassandra30-3.0.1-1.noarch (datastax)
Requires: python(abi) >= 2.7
Installed: python-2.6.6-64.el6.x86_64 (@base-local)
python(abi) = 2.6
You could try using --skip-broken to work around the problem
You could try running: rpm -Va --nofiles --nodigest
# python -V
Python 2.7.11
この質問を読むと、明らかに壊れることがあります。まあPythonのバージョンが混乱している場合。私はこの問題を解決したくないので、ここで誰かが私にことわざを見せ、このビットをインストールする方法を説明できることを願っています。
セントOS 6.7
編集する:
私はインストールしましたPython27使用SCL買い戻し。お金を守ってください。
答え1
あなたは使用することができますミレナプロジェクト。
$ repoquery --whatprovides 'python(abi) = 2.7'
python27-0:2.7.11-1.ius.centos6.x86_64
このPythonバージョンは通常のPythonと並列にインストールされるため、yumや他のシステムツールは引き続き正常に実行されます。python2.7
最新バージョンを使用するには、明示的に呼び出す必要があります。
$ python -V
Python 2.6.6
$ python2 -V
Python 2.6.6
$ python2.6 -V
Python 2.6.6
$ python2.7 -V
Python 2.7.11
答え2
SCLでPython 2.7を使用すると、すべてが正しく設定されている限り、Cassandra 3で動作します。
# Install all of the necessary packages
$ yum install centos-release-SCL python27 cassandra30
# Tell SCL about the normally installed python2.7 packages
$ echo "/usr/lib/python2.7/site-packages" | sudo tee /opt/rh/python27/root/usr/lib64/python2.7/site-packages/cqlshlib.pth
# Set up a helpful alias for cqlsh to use the new python
$ echo 'cqlsh() { scl enable python27 "cqlsh $@"; }' | sudo tee /etc/profile.d/cqlsh.sh
これでいつものようにcqlshを使うことができます。また、python2.7はSCLと共にインストールされているため、次の方法でいつでもアクティブなシェルを取得できます。
$ scl enable python27 bash
これにより、CentOS 6でcassandra 3.0.Xおよび3.Xを実行する問題が解決されます。ここでyumが動作し続けるにはPython 2.6が必要です。