- 前言:
- 一、更换阿里的yum源
- 二、下载安装包
- 三、编译安装
linux的centos7默认安装了python2 ,现在我们再安装一个python3.8的版本(系统默认的python 是python2 ,很多工具跑的时候用的是它,比如yum,所以不能卸载了python2)
#只有python2,没有python3 [root@node3 ~]# python --version Python 2.7.5 [root@node3 ~]# python3 --version bash: python3: 未找到命令...一、更换阿里的yum源
#yum源仓库的地址 在/etc/yum.repos.d/,并且只能读出第一层的repo文件 #yum仓库的文件都是以.repo结尾的 [root@node3 ~]# cd /etc/yum.repos.d [root@node3 yum.repos.d]# mkdir repo.bak [root@node3 yum.repos.d]# mv CentOS* ./repo.bak/ [root@node3 yum.repos.d]# cd repo.bak/ [root@node3 repo.bak]# ls CentOS-base.repo CentOS-Debuginfo.repo CentOS-Media.repo CentOS-Vault.repo CentOS-CR.repo CentOS-fasttrack.repo CentOS-Sources.repo [root@node3 repo.bak]# cd .. [root@node3 yum.repos.d]# wget -O /etc/yum.repos.d/CentOS-base.repo http://mirrors.aliyun.com/repo/Centos-7.repo #下载第一个阿里云仓库文件 #-O 参数 ,指定一个下载地址,且改名 [root@node3 yum.repos.d]# wget -O /etc/yum.repos.d/epel.repo http://mirrors.aliyun.com/repo/epel-7.repo ##配置第二个仓库文件 epel 额外仓库(redis,nginx,mongo,ipython) [root@node3 yum.repos.d]# yum clean all ##清空原本yum缓存 [root@node3 yum.repos.d]# yum makecache ##生成新的阿里云的yum缓存,加速下载预热数据
安装依赖环境
yum install gcc patch libffi-devel python-devel zlib-devel bzip2-devel openssl-devel ncurses-devel sqlite-devel readline-devel tk-devel gdbm-devel db4-devel libpcap-devel xz-devel -y二、下载安装包
官网地址
https://www.python.org/ftp/python/
[root@node3 ~]# cd /opt/ [root@node3 opt]# [root@node3 opt]# wget https://www.python.org/ftp/python/3.8.2/Python-3.8.2.tgz --2021-11-20 11:40:12-- https://www.python.org/ftp/python/3.8.2/Python-3.8.2.tgz 正在解析主机 www.python.org (www.python.org)... 151.101.108.223, 2a04:4e42:11::223 正在连接 www.python.org (www.python.org)|151.101.108.223|:443... 已连接。 已发出 HTTP 请求,正在等待回应... 200 OK 长度:24007411 (23M) [application/octet-stream] 正在保存至: “Python-3.8.2.tgz” 100%[=============================================================================>] 24,007,411 9.33KB/s 用时 32m 21s 2021-11-20 12:12:35 (12.1 KB/s) - 已保存 “Python-3.8.2.tgz” [24007411/24007411]) ##下载速度比较慢,耐心等候 [root@node3 opt]# ls Python-3.8.2.tgz三、编译安装
[root@node3 opt]# tar -xf Python-3.8.2.tgz ## 解压 [root@node3 opt]# cd Python-3.8.2/ [root@node3 Python-3.8.2]# ls aclocal.m4 config.sub Doc install-sh m4 Misc Parser Programs README.rst CODE_OF_CONDUCT.md configure Grammar Lib Mac Modules PC pyconfig.h.in setup.py config.guess configure.ac Include LICENSE Makefile.pre.in Objects PCbuild Python Tools [root@node3 Python-3.8.2]# [root@node3 Python-3.8.2]# ./configure --enable-shared=enable --prefix=/opt/python38/ --with-ssl # --prefix=/opt/python38/ 这个参数用于指定python安装的路径 # --enable-shared 启用系统共享库的功能,默认关闭 # --with-ssl 用于使加入ssl,如果不加pip install XXX可能出现不可用情况 [root@node3 Python-3.8.2]# make ##编译 python3.8的源代码 [root@node3 Python-3.8.2]# make install #生成 /opt/python38/
写进全局变量
[root@node3 Python-3.8.2]# vim /etc/profile #打开这个全局变量文件,最下面写入如下代码, PATH="/opt/python38/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/root/bin" [root@node3 Python-3.8.2]# source /etc/profile #重新加载
[root@node3 Python-3.8.2]# python --version Python 2.7.5 [root@node3 Python-3.8.2]# [root@node3 Python-3.8.2]# python3 --version Python 3.8.2 ##安装完成



