简略步骤
直接把所有步骤简略写下(认为已经把python3安装包下载上传,且路径为/usr/local
):
1、安装依赖包
yum install zlib-devel bzip2-devel openssl-devel ncurses-devel sqlite-devel readline-devel tk-devel gcc make libffi-devel -y
2、解压、进入文件
tar -zxvf Python-3.7.4.tgz
cd Python-3.7.4
3、配置路径、编译安装
./configure --prefix=/usr/local/Python-3.7.4
make && make install
4、添加软连接(原来python/pip默认的是2,现在替换成3)
ln -s /usr/local/Python-3.7.4/bin/python3 /usr/bin/python
ln -s /usr/local/Python-3.7.4/bin/pip3 /usr/bin/pip
5、修复 yum 下载(因为 yum 依赖于python2)
vi /usr/libexec/urlgrabber-ext-down
vi /usr/bin/yum
详细步骤
1、下载Linux版本的python安装包
python官网:https://www.python.org/getit/
因为本人在Windows上的版本是python3.7.4,所以我还是下载的Linux用的python3.7.4.tgz,自己可以更改版本,在后面步骤改为自己版本即可。
2、上传python安装包,通过专门上传软件即可
本人路径:/usr/local
3、安装依赖包
python3.7版本必须的依赖包,如果没有的话直接安装过后没有很多东西,特别是没有 pip 和 setuptools,后续补上很麻烦。
yum install zlib-devel bzip2-devel openssl-devel ncurses-devel sqlite-devel readline-devel tk-devel gcc make libffi-devel -y
4、解压安装包
tar -zxvf Python-3.7.4.tgz
5、进入解压后的文件夹
cd Python-3.7.4
6、配置安装路径(自定义安装路径,为了以后方便维护、删除)
./configure --prefix=/usr/local/Python-3.7.4
7、编译以及安装
这个时间略长,根据服务器配置,1.8G内存一般 7 分钟左右。
make && make install
8、建立软连接
Linux下的软链接其实就相当于Windows下的快捷方式
因为服务器默认的python/pip版本是2,所以建立软连接,将其改为安装版本
软连接用法:ln -s 源文件路径 目标文件路径
如果目标路径已被使用,就删除对应软连接,重新建立:rm -rf /usr/bin/python
ln -s /usr/local/Python-3.7.4/bin/python3 /usr/bin/python
ln -s /usr/local/Python-3.7.4/bin/pip3 /usr/bin/pip
可以查看 python/pip 基本信息和使用了
9、添加 python 至环境变量
(1)任何用户登录都可以调用的环境变量:vi /etc/profile
使生效:source /etc/profile
(2)只对当前用户添加,编辑隐藏文件:vi ~/.bash_profile
进入vi 编辑页面,然后输入 i 指令加入如下内容:
# python-3.7.4
export PYTHON_HOME=/usr/local/Python-3.7.4
export PATH=$PATH:$PYTHON_HOME/bin
接着按[ESC]退出编辑,输入 :wq 命令并按回车键保存退出。(如果你不确定是否已经保存成功,可以再次输入指令vim ~/.bash_profile查看刚才的内容是否已经保存成功了,如果已经成功则直接输入指令:q回车退出。)
至此就可以使用 python3 了。
问题
这么安装会出现问题,就是不能再使用 yum 下载了,因为 yum 是依赖于 python2 的,开发者后来没有升级到 python3,所以需要修改一些地方。
10、修复 yum 下载
(1)vi /usr/libexec/urlgrabber-ext-down
进入vi 编辑页面,然后输入 i 指令,将开头的 python 改为 python2,指定使用 python2
保存退出
(2)vi /usr/bin/yum
进入vi 编辑页面,然后输入 i 指令,将开头的 python 改为 python2,指定使用 python2
保存退出
验证
直接使用 python 爬虫验证以下,顺便测试 pip 导入包。
(1)pip 下载没问题
(2)python 运行程序也没问题