本文主要介紹在Linux(CentOS)下將Python的版本升級為3.6.2的方法
眾所周知,在2020年python官方將不再支持2.7版本的python,所以使用3.x版本的python是必要的,但是linux中默認安裝的python一般是2.6和2.7版本的,要是使用linux下的python就很有必要升級一下
進入正題
1.檢查確認系統的相關信息
[root@zstest1 ~]# cat /etc/redhat-release CentOS release 6.5 (Final) [root@zstest1 ~]# uname -a Linux zstest1 2.6.32-431.el6.x86_64 #1 SMP Fri Nov 22 03:15:09 UTC 2013 x86_64 x86_64 x86_64 GNU/Linux [root@zstest1 ~]# python -V Python 2.6.6
我的進行軟件升級系統是CentOS6.5-x86_64的,內核2.6.32,當前的python版本號為2.6.6
2.下載安裝Python-3.6.2
1) 下載Python-3.6.2.tgz軟件包
[root@zstest1 ~]# mkdir -p /server/tools/ [root@zstest1 tools]# cd /server/tools/ [root@zstest1 tools]# wget https://www.python.org/ftp/python/3.6.2/Python-3.6.2.tgz
2) 解壓編譯安裝
[root@zstest1 tools]# tar -xf Python-3.6.2.tgz [root@zstest1 tools]# cd Python-3.6.2 [root@zstest1 Python-3.6.2]# ./configure [root@zstest1 Python-3.6.2]# make [root@zstest1 Python-3.6.2]# make install
# 如果編譯出錯,需要檢查make,gcc等是否安裝好
yum install make gcc gcc-c++
3) 安裝完成,需要更改默認的python版本
# 檢查當前默認的python2,默認自帶的python位置在”/usr/bin/“目錄下
[root@zstest1 Python-3.6.2]# ll /usr/bin/python* -rwxr-xr-x 2 root root 9032 11月 22 2013 /usr/bin/python lrwxrwxrwx. 1 root root 6 3月 20 2016 /usr/bin/python2 -> python -rwxr-xr-x 2 root root 9032 11月 22 2013 /usr/bin/python2.6
# 檢查新安裝的python3,默認編譯安裝的python位置在”/usr/local/bin/“目錄下
[root@zstest1 Python-3.6.2]# ll /usr/local/bin/python* lrwxrwxrwx 1 root root 9 10月 31 16:48 /usr/local/bin/python3 -> python3.6 -rwxr-xr-x 2 root root 9630001 10月 31 16:48 /usr/local/bin/python3.6 lrwxrwxrwx 1 root root 17 10月 31 16:48 /usr/local/bin/python3.6-config -> python3.6m-config -rwxr-xr-x 2 root root 9630001 10月 31 16:48 /usr/local/bin/python3.6m -rwxr-xr-x 1 root root 3066 10月 31 16:48 /usr/local/bin/python3.6m-config lrwxrwxrwx 1 root root 16 10月 31 16:48 /usr/local/bin/python3-config -> python3.6-config
# 修改默認的python
# 刪除舊的python的軟連接,創建新的python2和python3的軟連接
[root@zstest1 Python-3.6.2]# cd /usr/bin/ [root@zstest1 bin]# rm -f python2 [root@zstest1 bin]# mv python python2.6.ori [root@zstest1 bin]# ln -s python2.6 python2 [root@zstest1 bin]# ln -s /usr/local/bin/python3 /usr/bin/python
4) 檢查修改后的python版本
[root@zstest1 bin]# python -V Python 3.6.2 [root@zstest1 bin]# python2 -V Python 2.6.6 [root@zstest1 bin]# python3 -V Python 3.6.2
# 可以看到,默認打開的python版本已經是3.6.2,至此python的版本已經升級成功
3.后續的軟件問題處理
# python的默認版本修改為3.x之后,系統對於yum的調用會出問題,所以需要修改下yum的相關配置
[root@zstest1 bin]# vim /usr/bin/yum
# 需要檢查確認以下配置
#!/usr/bin/python2
# 這樣,修改后的yum依然可以調用python2.6.6的python,在使用yum安裝軟件時就不會報錯了
# 以上是在CentOS6.5系統上進行的python版本升級,CentOS7.2上面的默認python版本為2.7.5,可以使用相同的方法進行修改,不過CentOS7.2的python鏈接稍有不同,需要注意
[root@centos72 ~]# ll /usr/bin/python* lrwxrwxrwx. 1 root root 7 10月 26 2016 /usr/bin/python -> python2 lrwxrwxrwx. 1 root root 9 10月 26 2016 /usr/bin/python2 -> python2.7 -rwxr-xr-x. 1 root root 7136 11月 20 2015 /usr/bin/python2.7
# 另外就是,CentOS7.2還有另外一個文件需要修改
[root@centos72 ~]# vim /usr/libexec/urlgrabber-ext-down
# 檢查確認以下配置:
#!/usr/bin/python2
======== 完畢,呵呵呵呵 =========