Linux 安裝python 3.8(Linux 的版本為 Centos 7)
一、下載下傳前準備工作
Centos 7作業系統上預設安裝了python 2.7.5版本,但是python 2即将成為曆史,python 3才是未來的主流,
在/home目錄下面 是空的 ,沒有任何檔案
需要建立一個檔案
mkdir python
移動到/home/python目錄下
cd python
pwd 檢視目前路徑
二。安裝python3.8的版本 ,安裝有2種方式:
第一種:通過win本地和虛拟機互傳工具,把自己在win本地準備的python3.8的壓縮包上傳到虛拟機對應的目錄下
互傳工具:
Xfp
WinSCP 也可以互傳的
這裡用winscp ,輸入ip和密碼登入就可以
連結成功
直接在左邊win裡面把要傳的檔案,直接滑鼠拖動到對應目錄下面
傳輸成功
虛拟機檢視
虛拟機和win本地上傳檔案還可以通過rz指令進行上傳
yum install lrzsz
rz:從本地上傳檔案至伺服器
有些安裝可能沒有上面的提示輸入y的指令 我這邊是全新建立的一個虛拟機環境才有
直接輸入
rz
後面回車找到對應目錄,上傳就行
上面的步驟都太麻煩,下面這個是最不麻煩的,最簡單的,直接用wget 下載下傳到檔案夾裡面
下載下傳python 3.8壓縮包
使用如下指令下載下傳python 3.8:
wget https://www.python.org/ftp/python/3.8.0/Python-3.8.0.tgz
如果提示-bash: wget: 未找到指令,需要先使用yum安裝wget,指令如下:
yum -y install wget
然後再使用wget下載下傳python,耐心等候。下載下傳結果如下
先删除,再用指令下載下傳
下載下傳的速度會有點慢,等就完事了,這個方法比上面簡單,但是虛拟機下載下傳确實慢,建議用上面的第一種方法
三、解壓縮安裝包
通過以下指令解壓縮下載下傳的檔案:
tar zxf Python-3.8.0.tgz
結果如下:
這個時候要進入 解壓的目錄下面
cd Python-3.8.0
安裝前要下載下傳一些依賴
因為編譯 Python 源代碼需要依賴于很多工具,是以得先準備一下,依次執行以下指令:
yum update -y
yum groupinstall -y 'Development Tools'
yum install -y gcc openssl-devel bzip2-devel libffi-devel
yum update -y
這個指令運作後,把所有更新了一遍
這個更新過程也有點久,等吧
yum groupinstall -y 'Development Tools'
yum install -y gcc openssl-devel bzip2-devel libffi-devel
開始安裝python 3.8
現在我們就可以安裝python 3.8了,首先執行以下指令(注意,一定要在Python-3.8.0目錄下執行該指令):
./configure prefix=/usr/local/python3 --enable-optimizations
–prefix選項是配置安裝的路徑,如果不配置該選項,安裝後可執行檔案預設放在/usr/local/bin,庫檔案預設放在/usr/local/lib,配置檔案預設放在/usr/local/etc,其它的資源檔案放在/usr/local/share,比較淩亂。
如果配置–prefix,如:./configure --prefix=/usr/local/python3可以把所有資源檔案放在 /usr/local/python3 的路徑中,不會雜亂.用了–prefix選項的另一個好處是解除安裝軟體或移植軟體。當某個安裝的軟體不再需要時,隻須簡單的删除該安裝目錄,就可以把軟體解除安裝得幹幹淨淨;移植軟體隻需拷貝整個目錄到另外一個相同的作業系統機器即可.當然要解除安裝程式,也可以在原來的make 目錄下用一次make uninstall,但前提是make檔案指定過uninstall.
–enable-optimizations是優化選項(LTO,PGO 等)加上這個 flag 編譯後,性能有 10% 左右的優化,但是這會明顯的增加編譯時間,老久了.
./configure指令執行完畢之後建立一個檔案 Makefile, 供下面的make指令使用,執行make install之後就會把程式安裝到我們指定的檔案夾中去。
make && make install
這個是正在編譯中,等待他編譯完成。
編譯完成
這個時候,python安裝好了沒有,可以去輸入
指令
python --version 指令驗證是否安裝好
從這個上面開,是沒有安裝好的
修改 python 2 連結,把原本Centos 7自帶的python 2.7.5版本指向位址修改一下
我們首先檢視一下 Python 可執行檔案的位置:
which python
從這個上面,可以看到python3已經被安裝到這個目錄下面了,和我們想要的目錄相對應
然後切換到相應的目錄:
cd /usr/bin
輸入
ll 指令 可以看到這個目錄是虛拟機根目錄,有很多檔案
檢視相關的python資訊:
ls -la python*
發現當我們執行python 指令時,系統指向python 2,然後python 2指向python 2.7,是以系統預設使用的python版本仍然是python 2。
首先将python 改名為 python.bak
mv python python2.bak
再次檢視python相關資訊:
接下來 進入修改yum配置檔案步驟
進入目錄
/usr/bin
,檢視有關yum的檔案:
ls -la yum*
使用vi 進入文本編輯器(如果有多個yum配置檔案,都要進去修改):
vi yum
點選i進入編輯模式之後将#!/usr/bin/python 改為#!/usr/bin/python2,按ESC退出編輯模式,輸入:wq!儲存修改退出。
回車
改成
儲存退出
通過
cat yum
看看改對了沒有,儲存了沒有
發現對的
同樣進入檔案 /usr/libexec/urlgrabber-ext-down 做同樣修改。
cd /usr/libexec
切換到這個目錄裡面
檢視這個目錄有很多檔案
我們用指令
vi urlgrabber-ext-down
檢視指令,沒有問題
下面進入 配置python 3軟連結步驟
進入/usr/bin目錄,配置軟連結。在我看來,其實軟連結就像Windows作業系統裡的快捷方式,比如現在桌面上有一個圖示叫python,現在你輕按兩下打開它,發現它打開的是Python 2,是以我們要配置其指向python 3。
ln -s /usr/local/python3/bin/python3.8 /usr/bin/python
配置後結果:
通過指令檢視軟連接配接配置是否成功
ls -la python*
配置成功
如果出現,這個,說前面我們沒有安裝導緻的儲存
這個時候,因為沒有使用
# 安裝
make && make install
指令安裝,導緻對應的目錄,沒有生成python檔案,這個問題,你重新去安裝就會報錯,隻能重新搞了,
部落客這裡沒有做快照,是以說這台虛拟機是廢了,是以我删了這台虛拟機,重新建立了一台,又要配置網關
如果是雲伺服器就要雲伺服器重置了,清空所有内容,
太悲劇了,忘記做快照了,是以提醒大家,玩虛拟機一定要做快照,虛拟機玩崩了,還可以快照回去,重新搞,不然隻能重新建立虛拟機了。
軟連接配接建立成功如圖
ln -s /usr/local/python3/bin/pip3.8 /usr/bin/pip
如果提示/usr/bin/pip已經存在,可以使用
rm
删除,然後再進行配置。
配置後結果:
提示存在了 ,删除
rm /usr/bin/pip
删除後建立
當然,也可以配置一個pip3軟連結。
ln -s /usr/local/python3/bin/pip3.8 /usr/bin/pip3
建立軟連接配接成功
驗證是否安裝成功
輸入python --version和pip -V 驗證是否安裝成功
輸入
python --version
輸入下面指令
pip -V
輸入
python
指令 測試能不能進入