我的 python 安装已损坏/损坏。我如何解决它?

Pro*_*ion 6 python linux redhat yum python-2.7

我在 RedHat Linux 版本 7 服务器(最初只安装了 Python 2.6.x)上遵循了以下说明:

指令的开头

安装构建工具

sudo yum install make automake gcc gcc-c++ kernel-devel git-core -y
Run Code Online (Sandbox Code Playgroud)

安装 python 2.7 并更改默认的 python 符号链接

sudo yum install python27-devel -y
sudo rm /usr/bin/python
sudo ln -s /usr/bin/python2.7 /usr/bin/python
Run Code Online (Sandbox Code Playgroud)

yum仍然需要2.6,所以将其写入并备份脚本

sudo cp /usr/bin/yum /usr/bin/_yum_before_27
sudo sed -i s/python/python2.6/g /usr/bin/yum
sudo sed -i s/python2.6/python2.6/g /usr/bin/yum
Run Code Online (Sandbox Code Playgroud)

现在应该显示 2.7.5 或更高版本:

python -V 
Run Code Online (Sandbox Code Playgroud)

指令结束

上述命令和注释摘自:

http://www.lecloud.net/post/61401763496/install-update-to-python-2-7-and-latest-pip-on

python -v 命令返回以下内容:

-bash: python: command not found
Run Code Online (Sandbox Code Playgroud)

现在好像我没有安装Python。我不想把百胜打破。我尝试安装Python 3.4。

whereis python显示这个:

python: /usr/bin/python2.6 /usr/bin/python2.6-config /usr/bin/python /usr/lib/python2.6 /usr/lib64/python2.6 /usr/local/bin/python2 .7 /usr/local/bin/python3.4m-config /usr/local/bin/python2.7-config /usr/local/bin/python3.4 /usr/local/bin/python3.4m /usr/local /lib/python2.7 /usr/local/lib/python3.4 /usr/include/python2.6 /usr/share/man/man1/python.1.gz

我现在应该怎么做?我想要一个可以运行的 Python 安装。对于我正在做的某些事情,我需要它为 2.7 或更高。我希望百胜仍然可以工作。

Mat*_*DMo 0

python27通过安装软件包可以轻松解决此问题yum。它应该安装在 中/usr/bin,并且可能会覆盖/usr/bin/python应该指向 2.6 的符号链接。如果确实如此(只需运行ls -l python*看看/usr/bin),请删除符号链接并将其指向 2.6。接下来创建一个/usr/local/bin/python指向 的符号链接/usr/bin/python2.7。最后,修改您的~/.bashrc~/.bash_profile(无论您使用哪个)以使其在您的 PATH 中/usr/local/bin包含:/usr/bin

export PATH=/usr/local/bin:$PATH
Run Code Online (Sandbox Code Playgroud)

在文件的最后。这样,/usr/bin/python仍然链接到 Python 2.6,这是系统所期望的,当您python在命令行运行时,它将启动 2.7。您也不应该对yum脚本进行任何更改 - 只是一揽子替换python而不python2.6了解您在做什么并不是一个好主意。

如果可能的话,我还建议安装 Python 3.4 /usr/local/bin,其中二进制文件将按python3约定命名。即使它安装在 中/usr/bin,您仍然可以选择运行python3python3.4指定您想要的版本。我在 CentOS 系统上工作,该系统安装了从 2.4 到 3.4 的每个版本的 Python,全部安装在/usr/local/bin(我确信这是手动完成的,而不是通过yum),而唯一python*安装的/usr/bin是 2.6。我找不到python3RedHat 的软件包(我可能没有足够努力地寻找),所以我建议从源代码构建最新版本(在撰写本文时为 3.4.3)。将 tarball 解压到合适的目录中,查看 README 文件,然后在该Python-3.4.3目录中运行./configure --help以查看选项是什么,以及是否需要更改任何内容。只要您已经gcc安装,并且不需要链接到任何奇怪的数学库或任何东西,您应该能够运行:

./configure
make
make test
sudo make install
Run Code Online (Sandbox Code Playgroud)

它将安装到/usr/local/bin. 检查该步骤末尾的消息make,因为它将列出无法在那里构建的所有模块。失败通常是因为您没有安装所需的库,因此请查看函数setup.py的基本目录detect_modules()(从第 449 行开始,一直延伸到第 1564 行)。安装库和-devel软件包,以便获得必要的标头。

如果您想安装最新的 2.7.9,而不是 RH 的 2.7.5,也可以遵循相同的过程。(在我看来)2.7.9 的主要优点之一是pip默认安装,使第三方模块安装变得更加容易。

祝你好运!