CentOS 7 預設的 python 版本是 python2.7.5 。因為 yum 依賴於預設的 python 版本的緣由,所以要先保留預設版本,並修改 yum 檔案頭部後,才能開始安裝更新 python2 和 python3 兩個最新版本。(python2 和 python3 共存)
一. 保留預設 python 版本 2.7.5,並修改 yum 頭部,保持 yum 對預設版本 python2.7.5 的依賴
1.su root # 獲取 root 許可權
2.mv /usr/bin/python2.7 /usr/bin/python2.7.5 # 保留預設版本 python 為 python2.7.5
ln -s /usr/bin/python2.7.5 /usr/local/bin/python2.7.5 # 建立軟連線
3.ll /usr/bin/yum* # 檢視/usr/bin/目錄下所有 yum 檔案(7 個)頭部
4.vi /usr/bin/yum* # 修改/usr/bin/目錄下所有 yum 檔案(7 個)頭部
#!/usr/bin/python —> #!/usr/bin/python2.7.5
5.vi /usr/libexec/urlgrabber-ext-down # 修改/usr/libexec/目錄下 urlgrabber-ext-down 頭部
#!/usr/bin/python —> #!/usr/bin/python2.7.5
二. 安裝最新版 python2.7.13 和 python3.6.2(python2 和 python3 共存,修改後預設版本為 python3.6.2)
準備工作:
1. 安裝 wget 命令(可以線上下載安裝包的命令)
yum -y install wget
2. 準備編譯環境
yum groupinstall ‘Development Tools’
yum install zlib-devel bzip2-devel openssl-devel ncurses-devel
3. 下載並安裝最新版本的 python2 和 python3 的 tgz 壓縮檔案
https://www.python.org/ftp/python/2.7.13/Python-2.7.13.tgz
https://www.python.org/ftp/python/3.6.2/Python-3.6.2.tgz
開始安裝:
1. 進入下載目錄:
cd /usr/local/src
2. 下載並安裝最新版本 python2:
wget https://www.python.org/ftp/python/2.7.13/Python-2.7.13.tgz
tar zxvf Python-2.7.13.tgz
cd Python-2.7.13
./configure
make all
make install
make clean
make distclean
rm -rf /usr/bin/python
rm -rf /usr/bin/python2
rm -rf /usr/bin/python2.7
ln -s /usr/local/bin/python2.7 /usr/bin/python
ln -s /usr/local/bin/python2.7 /usr/bin/python2
ln -s /usr/local/bin/python2.7 /usr/bin/python2.7
/usr/bin/python -V
/usr/bin/python2 -V
/usr/bin/python2.7 -V
rm -rf /usr/local/bin/python
rm -rf /usr/local/bin/python2
ln -s /usr/local/bin/python2.7 /usr/local/bin/python
ln -s /usr/local/bin/python2.7 /usr/local/bin/python2
python -V
python2 -V
python2.7 -V
3. 下載並安裝最新版本 python3:
wget https://www.python.org/ftp/python/3.6.2/Python-3.6.2.tgz
tar zxvf Python-3.6.2.tgz
cd Python-3.6.2
./configure
make all
make install
make clean
make distclean
rm -rf /usr/bin/python
rm -rf /usr/bin/python3
rm -rf /usr/bin/python3.6
ln -s /usr/local/bin/python3.6 /usr/bin/python
ln -s /usr/local/bin/python3.6 /usr/bin/python3
ln -s /usr/local/bin/python3.6 /usr/bin/python3.6
/usr/bin/python -V
/usr/bin/python3 -V
/usr/bin/python3.6 -V
rm -rf /usr/local/bin/python
rm -rf /usr/local/bin/python3
ln -s /usr/local/bin/python3.6 /usr/local/bin/python
ln -s /usr/local/bin/python3.6 /usr/local/bin/python3
python -V
python3 -V
python3.6 -V