将CentOS自带的Python2.x升级到Python3
2022-12-13 本文已影响0人
江月照我眠
1. 前往Python官网下载安装指定版本
以3.9.9为例,下载链接为:https://www.python.org/ftp/python/3.9.9/Python-3.9.9.tgz
wget https://www.python.org/ftp/python/3.9.9/Python-3.9.9.tgz # 下载
tar -zxvf Python-3.9.9.tgz # 解压
cd Python-3.9.9/ # 进入解压文件夹
./configure --prefix=/usr/local/python3 # 执行,可指定安装路径 --prefix=/usr/local/python3
make & makeinstall # 编译安装
2. 备份旧版本、修改python命令软连接
mv /usr/bin/python /usr/bin/python.bak # 备份旧版本
ln -s /usr/local/python3/bin/python3 /usr/bin/python # 将python命令软连接到最新的python3命令
输入python -V查看版本已能正确输出
3. 修改yum命令
上面步骤完成后,输入yum执行命令发现报错:
File "/usr/bin/yum", line 30
except KeyboardInterrupt, e:
^
SyntaxError: invalid syntax
原因是系统中很多命令依赖于python2,而命令代码中直接使用的python指向的是python3,直接打开yum文件
vim /usr/bin/yum
将第一行#!/usr/bin/python 修改为 #!/usr/bin/python2
4. 修改其他命令
再执行yum命令依然报错:
Loaded plugins: fastestmirror
Loading mirror speeds from cached hostfile
File "/usr/libexec/urlgrabber-ext-down", line 28
except OSError, e:
^
SyntaxError: invalid syntax
Exiting on user cancel
执行命令:
vim /usr/libexec/urlgrabber-ext-down
将第一行#!/usr/bin/python 修改为 #!/usr/bin/python2