Centos 7 默认安装的Python 的版本是2.7的,现在不少人用的是3.x上的版本,故而需要了解下如何从Python2.7升级到Python 3.6.

在虚拟机安装时,网络不通会先遇到一个错误提示 “yum 错误:Cannot find a valid baseurl for repo: base/7/x86_6”,这时

cd /etc/sysconfig/network-scripts/
找到类似于 ifcfg-exxx 类似的文件(各个机器文件名不一样,我本机是ifcfg-ens33),用 vi 编辑一下,把ONBOOT=no,改为ONBOOT=yes

然后

service network restart

然后网络通了,yum命令也就好使了,接下来就开始升级Python

1、切换到目录/usr/local/src,从Python官网到获取Python3的包,执行命令行: wget

cd /usr/local/src
wget https://www.python.org/ftp/python/3.6.3/Python-3.6.3.tgz
2、解压

tar -xzf Python3.6.3.tgz
3、在/usr/local路径下创建目录--python3

mkdir /usr/local/python3
4、编译安装,分条逐行执行命令

cd /usr/local/src/Python-3.6.3
./configure --prefix=/usr/local/python3
make all
make install
到最后一个命令执行后如果遇到错误:zipimport.ZipImportError: can't decompress data; zlib not available

从报错信息中,我们可以看出系统已经安装了zlib软件包,之所以报错是因为在编译安装时找不到zlib的开发链接库。
centos系统中,zlib的开发链接库软件包是“zlib-devel”,因此我们只需要通过yum安装上该软件包即可:

sudo yum -y install zlib-devel
然后再继续执行 make install

5、进入安装的绝对路径,检查是否安装成功

/usr/local/python3/bin/python3.6 -V
6、查看环境变量,启动python时默认按照PATH的顺序进行查找。
执行命令: echo $PATH

7、修改软连接,启动python时指向python3.6
A.备份之前的python
执行命令: mv /usr/bin/python /usr/bin/python2.7.5 (请先查询好自己的python版本)

B.修改软连接
执行命令: ln -s /usr/local/python3/bin/python3 /usr/bin/python

C.查看python版本:执行命令: python

或python -V, pip -V

8、修改yum文件,因为升级了版本以后,yum就会报错:
执行命令:sudo vim /usr/bin/yum

9、在安装软件的时候又会报错误:修改文件

vi /usr/libexec/urlgrabber-ext-down

第一行改为:#!/usr/bin/python2.7  (2.7是版本,自己根据自己的版本改!)

Centos7下把python 2.7升级到python 3.6(升级过程遇到的一些相关问题)的更多相关文章

  1. 大数据项目之_15_帮助文档_NTP 配置时间服务器+Linux 集群服务群起脚本+CentOS6.8 升级到 python 到 2.7

    一.NTP 配置时间服务器1.1.检查当前系统时区1.2.同步时间1.3.检查软件包1.4.修改 ntp 配置文件1.5.重启 ntp 服务1.6.设置定时同步任务二.Linux 集群服务群起脚本2. ...

  2. RHEL 6.6下Python 2.6.6升级到Python 3.6.6

      最近一段时间shell脚本写得很溜,很有成就感,一想到被自己落下的Python就感到十分心虚.开始坚持学习Python!先将自己的测试机器的Python升级到Python 3.6.6.简单整理.记 ...

  3. CentOS 7.0 下 Python 2.7 升级到 Python 3.5

    前段因为时间工作需要,要把 Centos 7.0 默认安装的 Python 2.7 升级到 Python 3.5. 具体操作如下: # 安装 gcc gcc-c++ 等编译工具软件 yum insta ...

  4. 【转】python 2.6.6升级到python 2.7.x版本的方法

    1.下载python2.7.x wget https://www.python.org/ftp/python/2.7.6/Python-2.7.6.tgz 2.解压并编译安装 tar -zxvf Py ...

  5. python环境搭建-Linux系统下python2.7升级python3.5.2步骤

    首先Python 查看版本 , 在Linux下特别注意权限问题,创建目录时候切记给予权限 如果是 ubnutu 请使用首先切换到 sudo su , 否则 make install 会出现问题.. 升 ...

  6. CENTOS 7 升级安装 Python 3.5

    写在前面的话 本文采取源码的方式安装 Python 3.5.2,如果是其它版本会有或多或少的差异,且写这篇的时候官网最新的是 Python 3.7,个人使用 3.5 就足够了,没必要更新到最新,否则出 ...

  7. 【转】linux和windows下安装python集成开发环境及其python包

    本系列分为两篇: 1.[转]windows和linux中搭建python集成开发环境IDE 2.[转]linux和windows下安装python集成开发环境及其python包 3.windows和l ...

  8. Nginx+uWSGI+Django+Python+ MySQL 搭建可靠的Python Web服务器

    一.安装所需工具 yum -y install gcc gcc-c++ rpm-build mysql* libtool-ltdl* libtool automake autoconf libtool ...

  9. python 安装 easy_intall 和 pip python无root权限安装

    http://www.cnblogs.com/haython/p/3970426.html easy_install和pip都是用来下载安装Python一个公共资源库PyPI的相关资源包的 首先安装e ...

随机推荐

  1. 英语chalchite蓝绿松石chalchite单词

    蓝绿松石是铜和铝的磷酸盐矿物集合体,以不透明的蔚蓝色最具特色.也有淡蓝.蓝绿.绿.浅绿.黄绿.灰绿.苍白色等色.一般硬度5~6,密度2.6~2.9,折射率约1.62.长波紫外光下,可发淡绿到蓝色的荧光 ...

  2. Palo Alto GlobalProtect上的PreAuth RCE

    0x00 前言 SSL VPN虽然可以保护企业资产免受互联网被攻击的风险影响,但如果SSL VPN本身容易受到攻击呢?它们暴露在互联网上,可以可靠并安全地连接到内网中.一旦SSL VPN服务器遭到入侵 ...

  3. Kubernetes学习之基础概念

    本文章目录 kubernetes特性 kubernetes集群架构与组件 一.kubernetes集群架构 二.集群组件 三.ubernetes集群术语 深入理解Pod对象 一.Pod容器分类 基础容 ...

  4. httpget请求测试用Java代码的实现方法

    原文:http://www.cnblogs.com/johnson-yuan/p/6637906.html 1.首先要在eclipse中导入HttpClient的jar包. 2.新建类并写入一下代码: ...

  5. 【爬虫】Condition版的生产者和消费者模式

    Condition版的生产者和消费者模式 threading.Condition 在没有数据的时候处于阻塞状态,有数据可以使用notify的函数通知等等待状态的线程运作 threading.Condi ...

  6. Kubernetes YAML 文件全字段详解

    Kubernetes YAML 文件全字段详解 Deployment yaml 其中主要参数都在podTemplate 中,DaemonSet StatefulSet 中的pod部分一样. apiVe ...

  7. JVM&G1 GC 学习笔记(一)

    在入门学习JVM的过程中,我们需要先了解关于JVM的知识中有哪些关键词或关键术语,今天在看完书后我想记录下来. Xms64mb    虚拟机初始化时设置内存大小为64mb Xmx256mb  设定虚拟 ...

  8. Windows下安装Texlive2018

    下载参考:texlive安装 在Windows下双击install-tl-advanced.bat后,报错: can't spawn cmd.exe texlive 解决方法:在系统变量 path 增 ...

  9. Use /* eslint-disable */ to ignore all warnings in a file. 报错

    有了eslint的校验,可以来规范开发人员的代码,是挺好的.但是有些像缩进.空格.空白行之类的规范,但是稍有不符合,就会在开发过程中一直报错,太影响心情和效率了.所以,还是会选择关闭eslint校验. ...

  10. sublime设置默认字体样式

    因电脑配置的不同,还有个人喜好的不同,有时候想用自己喜欢的字体来写代码,想用自己习惯的字号大小来显示代码.这些又该怎样设置呢? 本节主要介绍下如何设置字体大小和样式 (1)点菜单栏 “Preferen ...