安装 dsc30 - python 2.6 反击

安装 dsc30 - python 2.6 反击

我正在尝试将某些系统升级到 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 的版本混淆了。我不想解开这个问题,所以我希望这里有人可以向我展示众所周知的灯光并解释如何安装这个位。

CentOS 6.7


编辑:

我已经安装了蟒蛇27使用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 一起安装的,因此您可以随时使用以下命令获取启用它的 shell:

$ scl enable python27 bash

这应该可以解决在 CentOS 6 上运行 cassandra 3.0.X 和 3.X 的问题,其中需要 python 2.6 才能保持 yum 工作。

相关内容