![通过 SCL devtoolset 在 Scientific Linux 6 上安装 Python 2.7](https://linux22.com/image/91387/%E9%80%9A%E8%BF%87%20SCL%20devtoolset%20%E5%9C%A8%20Scientific%20Linux%206%20%E4%B8%8A%E5%AE%89%E8%A3%85%20Python%202.7.png)
根据这篇文章,我了解 Scientific Linux 6 使用 Python 2.6.6 来实现几个关键实用程序,包括 yum如何在 Centos 6 上安装 Python 27
我发现的最简单且最干净的安装是基于 Red Hat Software Collection 和我已经安装的 devtoolset-3 软件包在 Scientific Linux 中编译
我停在下一步:
yum install python27
scl enable python27 bash
您能否建议在不进行替代安装的情况下按照指示进一步进行是否“安全”?谢谢。
答案1
您应该验证该信息python27
来自 SCL 而不是其他地方。
就我而言,我使用的是 CentOS 6,但过程是相同的。
所以:
$ yum info python27
Loaded plugins: fastestmirror, priorities
Loading mirror speeds from cached hostfile
6 packages excluded due to repository priority protections
Available Packages
Name : python27
Arch : x86_64
Version : 1.1
Release : 25.el6
Size : 5.2 k
Repo : centos-sclo-rh
Summary : Package that installs python27
License : GPLv2+
Description : This is the main package for python27 Software Collection.
我们可以看到它来自于centos-sclo-rh
正确的版本。
我们可以安装这个。因为它来自 SCL,所以它将安装到其中/opt/rh
,这将不是影响操作系统的任何其他方面:
$ sudo yum install python27
...
$ ls /opt/rh
python27
我们可以看到默认的python仍然没有改变:
$ /usr/bin/python --version
Python 2.6.6
现在我们需要scl
命令。这是来自scl-utils
您可能需要安装的软件包 ( yum install scl-utils
)。
$ scl enable python27 bash
这将运行一个更改了路径的新 shell:
$ scl enable python27 bash
bash-4.1$ echo $PATH
/opt/rh/python27/root/usr/bin:/usr/local/bin:/usr/bin/X11:/etc:/usr/local/sbin:/sbin:/usr/sbin
bash-4.1$ command -v python
/opt/rh/python27/root/usr/bin/python
bash-4.1$ python --version
Python 2.7.8
因此启用和运行 SCL 不会影响核心操作系统;它不会破坏您通常运行的任何内容,但允许并行安装较新版本的 python(在 中/opt/rh
)。