1. 程式人生 > 其它 >RedHat(Centos)手動安裝python3

RedHat(Centos)手動安裝python3

技術標籤:python學習

redhat(centos)自帶版本是python2.7,在線上環境會需要用到python3,而且線上環境不能夠連線外網,這時候需要我們手動安裝python3,具體安裝配置方式可以參考下列步驟。

python下載地址:https://www.python.org/ftp/python/

1、先檢視系統python的位置在哪兒

在這裡插入圖片描述
python2.7預設安裝是在 /usr/bin目錄中,切換到/usr/bin/

從下面的圖中我們可以看到,python指向的是python2,python2指向的是python2.7,因此我們可以裝個python3,然後將python指向python3,然後python2指向python2.7,那麼兩個版本的python就能共存了。

在這裡插入圖片描述

2、下載python3的包之前,要先安裝相關的依賴包,用於下載編譯python3:

yum install zlib-devel bzip2-devel openssl-devel ncurses-devel sqlite-devel readline-devel tk-devel gcc make

運行了以上命令以後,就安裝了編譯python3所用到的相關依賴

3、預設的centos7是沒有安裝pip,先新增epel擴充套件源

yum -y install epel-release

4、安裝pip

yum install python-pip

5、用pip裝wget

pip install wget

6、用wget下載python3的原始碼包,或者自己先下載好,上傳到伺服器再安裝,如果網路快可以直接安裝

wget https://www.python.org/ftp/python/3.6.8/Python-3.6.8.tar.xz

7、編譯python3原始碼包,解壓

xz -d Python-3.6.8.tar.xz
tar -xf Python-3.6.8.tar

8、進入解壓後的目錄,依次執行下面命令進行手動編譯

cd Python-3.6.8
./configure prefix=/usr/local/python3
make && make install

9、安裝依賴zlib、zlib-deve

yum install zlib zlib-devel

10、最後沒提示出錯,就代表正確安裝了,在/usr/local/目錄下就會有python3目錄

11、新增軟連結,將原來的連結備份

mv /usr/bin/python /usr/bin/python.bak

12、新增python3的軟連結

ln -s /usr/local/python3/bin/python3.6 /usr/bin/python
ln -s /usr/local/python3/bin/pip3.6 /usr/bin/pip

13、測試是否安裝成功了

python -V

14、更改yum配置,因為其要用到python2才能執行,否則會導致yum不能正常使用

vi /usr/bin/yum

15、把第一行的#! /usr/bin/python修改為如下

/usr/bin/python2

16、有一個地方也需要修改

vi /usr/libexec/urlgrabber-ext-down>

17、把第一行的#! /usr/bin/python修改如下

#! /usr/bin/python2

18、啟動python2

python2

19、啟動python3

python

備忘:

配置選項
sudo ./configure --enable-optimizations --prefix=/usr/local/python-3.5.6
--enable-optimizations為優化效能的選項,建議使用上這個引數。
--prefix為指定安裝的路徑

注:python3.5.6我多次嘗試過了,它己經不認--with-ssl,with-zlib等選項了,我感覺這可能是一種進步,因為我如果漏裝了zlib和readline的話,系統重新安裝上就是了,不用再重新編譯python3也能正確匯入了。但注意的是ssl視系統情況不同而不同,openSUSE下ssl的話還是得重新編譯且是在setup.dist中配置。

配置選項
sudo ./configure --enable-optimizations --prefix=/usr/local/python-3.5.6 --with-zlib --with-readline
--enable-optimizations為最優安裝,建議使用這個引數。
--prefix為指定安裝的路徑

參考文章:

https://blog.csdn.net/longzhoufeng/article/details/109879818​​

https://blog.csdn.net/u012145252/article/details/81701699