"
"
0
Centos7默认的python版本是2.7,现在很多新开发的python均需要3.X以上。下面升级centos的预装python版本到最新。
先安装一堆系统依赖(以下可能有重复的,不影响):
sudo yum install -y bzip2*
sudo yum -y install bzip2 bzip2-devel ncurses openssl openssl-devel openssl-static xz lzma xz-devel sqlite sqlite-devel gdbm gdbm-devel tk tk-devel libffi-devel
一. 安装文件准备
先下载最新得python安装文件,比如以3.9.1为例。如果通过centos得wget命令太慢,可以下载到本地再通过rz命令上传到服务器。python3.9.1下载文件:
wget https://www.python.org/ftp/python/3.8.15/Python-3.8.15.tgz
创建安装目录:
sudo mkdir /usr/local/Python3.8.15
二 . 编译
解压:
tar -xzf Python-3.8.15.tgz
提示权限:
sudo -i
在解压目录进行编译安装:
sudo -i
./configure --prefix=/usr/local/Python3.8.15 --with-ssl
make clean && make && make install
安装完成提示:
安装完成后,接下来开始配置系统连接和路径指针。
建立软连接,有两种方式:
1 . 把centos旧的python版本移走:
mv /usr/bin/python /usr/bin/python2.7.5
mv /usr/bin/pip /usr/bin/pip2.7.5
修改系统软链接:
sudo ln -sf /usr/local/python3/bin/python3.8 /usr/bin/python
sudo ln -sf /usr/local/python3/bin/pip3 /usr/bin/pip
- 旧的Python版本不移走,新创建一个python3的命令,旧的python2.7版本移走,可能有些yum ,wget类的命令不能用.
建议采用此方式:
sudo ln -sf /usr/local/Python3.8.15/bin/python3.8 /usr/bin/python3
sudo ln -sf /usr/local/Python3.8.15/bin/pip3 /usr/bin/pip3
常见报错
/usr/bin/install: cannot change permissions of ‘/usr/local/Python3.8/bin’: No such file or directory
使用sudo -i 提升权限
建立软连接后python3提示找不到,-bash: python3: command not found