CentOS7.2 多個python版本共存


1.查看是否已經安裝Python

CentOS 7.2 默認安裝了python2.7.5 因為一些命令要用它比如yum 它使用的是python2.7.5。

使用python -V命令查看一下是否安裝Python:

然后查看一下Python可執行文件的位置:

進入到bin目錄:

可以看到可執行文件python指向python2,python2又指向python2.7也就是說Python命令執行的系統預裝的Python2.7。

要安裝Python的其他版本先執行mv python python.bak命令備份python文件

2、安裝python3.5.2版本

安裝相關包

(1)# yum install zlib-devel bzip2-devel openssl-devel ncurses-devel sqlite-devel readline-devel tk-devel gcc make

下載 Python 3.5.2源碼包

(1)# wget https://www.python.org/ftp/python/3.5.2/Python-3.5.2.tar.xz

(2)# tar xf Python-3.5.2.tar.xz -C /usr/local/src/ (yum -y install xz  #若失敗,重建yum緩存.yum clean all ,yum makecache)
(3)# cd /usr/local/src/Python-3.5.2

(4)#./configure --prefix=/usr/local/python3

(5)#make && make install

//從 Python 3.4 開始就已經自帶了 pip 和 easy_install(setuptools 包帶的命令) 包管理命令,你可以在 /usr/local/python3/bin/ 目錄下看到,查看一下已經安裝的擴展包:

(6)#/usr/local/python3/bin/pip3 list
pip (8.1.1)

setuptools (20.10.1)

You are using pip version 8.1.1, however version 8.1.2 is available.

You should consider upgrading via the 'pip install --upgrade pip' command.

 // 更新pip

(7)#/usr/local/python3/bin/pip3 install --upgrade pip

(8)# /usr/local/python3/bin/pip3 list

pip (8.1.2)

setuptools (20.10.1)

//查看是否安裝成功

(9)創建軟連接。

```

 

ln -s /usr/local/python3/bin/python3 /usr/bin/python3
ln -s /usr/local/python3/bin/pip3 /usr/bin/pip3

 

```

執行python -V查看Python是否安裝成功。

# python -V

Python 3.5.2

//安裝完成。

3、修改yum配置文件

因為yum使用python2,因此替換為python3后可能無法正常工作,繼續使用這個python2.7.5,因此需要修改yum相關配置文件。

(1)vi /usr/bin/yum

把文件頭部的#!/usr/bin/python改成#!/usr/bin/python2.7保存退出即可。

因為yum使用python2,因此替換為python3后可能無法正常工作,繼續使用這個python2.7.5因此修改yum配置文件(vi /usr/bin/yum)。把文件頭部的#!/usr/bin/python改成#!/usr/bin/python2.7保存退出即可

(2) vi /usr/libexec/urlgrabber-ext-down

第一行改為#!/usr/bin/python2.7

注意:若只修改第一個,還是無法使用yum,需要這2個文件都修改。

只修改一個不修改第二個,報錯如下:

#yum repolist
已加載插件:fastestmirror
Determining fastest mirrors
 * base: mirrors.yun-idc.com
 * extras: mirrors.yun-idc.com
 * updates: mirrors.yun-idc.com
  File "/usr/libexec/urlgrabber-ext-down", line 28
    except OSError, e:
                  ^
SyntaxError: invalid syntax
  File "/usr/libexec/urlgrabber-ext-down", line 28
    except OSError, e:
                  ^
SyntaxError: invalid syntax
  File "/usr/libexec/urlgrabber-ext-down", line 28
    except OSError, e:
                  ^
SyntaxError: invalid syntax

由於用戶取消而退出

4、檢測多版本

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM