zoukankan      html  css  js  c++  java
  • CentOS7下将Python的版本升级为3.7

    本文主要介绍在Linux(CentOS)下将Python的版本升级为3.x的方法

    众所周知,在2020年python官方将不再支持2.7版本的python,所以使用3.x版本的python是必要的,但是linux中默认安装的python一般是2.6和2.7版本的,要是使用linux下的python就很有必要升级一下

    进入正题

    1.检查确认系统的相关信息

    [root@localhost /]# cat /etc/redhat-release
    CentOS Linux release 7.6.1810 (Core)
    [root@localhost /]# uname -a
    Linux localhost.localdomain 3.10.0-957.el7.x86_64 #1 SMP Thu Nov 8 23:39:32 UTC 2018 x86_64 x86_64 x86_64 GNU/Linux
    [root@localhost /]# python -V
    Python 2.7.5

    当前的python版本号为2.7.5

    2.下载安装Python-3.7.0

    1) 下载Python-3.7.0.tgz软件包

    [root@localhost /]# mkdir -p /server/tools/
    [root@localhost /]# cd /server/tools/
    [root@localhost tools]# wget https://www.python.org/ftp/python/3.7.0/Python-3.7.0.tgz

    也可以手动下载再上传到服务器:https://www.python.org/ftp/python/

    2) 解压编译安装

    [root@localhost tools]# tar -xf Python-3.7.0.tgz

    [root@localhost tools]# cd Python-3.7.0

    [root@localhost Python-3.7.0]# ./configure --with-ssl

    [root@localhost Python-3.7.0]# make

    [root@localhost Python-3.7.0]#  make install 

    异常处理:

    1、如果编译出错,需要检查make,gcc等是否安装好:yum install make gcc gcc-c++

    2、如果出现这种错误则需要安装zlib的解压缩类库,再执行make install :yum -y install zlib*

    import pip._internal
    zipimport.ZipImportError: can't decompress data; zlib not available

    3、ModuleNotFoundError: No module named '_ctypes':

    3.7版本需要一个新的包libffi-devel,安装此包之后再次进行编译安装即可:yum install libffi-devel -y

    出现一下提示,则说明安装成功

    3) 安装完成,需要更改默认的python版本

    # 检查当前默认的python2,默认自带的python位置在”/usr/bin/“目录下

    [root@localhost Python-3.7.0]# ll /usr/bin/python*
    lrwxrwxrwx. 1 root root 7 3月 26 23:38 /usr/bin/python -> python2
    lrwxrwxrwx. 1 root root 9 3月 26 23:38 /usr/bin/python2 -> python2.7
    -rwxr-xr-x. 1 root root 7216 10月 31 2018 /usr/bin/python2.7

     

    # 检查新安装的python3,默认编译安装的python位置在”/usr/local/bin/“目录下

    [root@localhost Python-3.7.0]# ll /usr/local/bin/python*
    lrwxrwxrwx. 1 root root 9 6月 16 21:47 /usr/local/bin/python3 -> python3.7
    -rwxr-xr-x. 2 root root 13966016 6月 16 21:46 /usr/local/bin/python3.7
    lrwxrwxrwx. 1 root root 17 6月 16 21:47 /usr/local/bin/python3.7-config -> python3.7m-config
    -rwxr-xr-x. 2 root root 13966016 6月 16 21:46 /usr/local/bin/python3.7m
    -rwxr-xr-x. 1 root root 3097 6月 16 21:47 /usr/local/bin/python3.7m-config
    lrwxrwxrwx. 1 root root 16 6月 16 21:47 /usr/local/bin/python3-config -> python3.7-config

    # 修改默认的python

    # 删除旧的python的软连接,创建新的python2和python3的软连接

    [root@localhost Python-3.7.0]# cd /usr/bin/
    [root@localhost bin]# rm -f python2
    [root@localhost bin]# mv python python2.6.ori
    [root@localhost bin]# ln -s python2.7 python2
    [root@localhost bin]# ln -s /usr/local/bin/python3 /usr/bin/python

    4) 检查修改后的python版本

    [root@localhost bin]# python -V
    Python 3.7.0
    [root@localhost bin]# python2 -V
    Python 2.7.5
    [root@localhost bin]# python3 -V
    Python 3.7.0
    [root@localhost bin]#

    可以看到,默认打开的python版本已经是3.7.0,至此python的版本已经升级成功

    3.后续的软件问题处理

    # python的默认版本修改为3.x之后,系统对于yum的调用会出问题,所以需要修改下yum的相关配置

    [root@localhost bin]# vi /usr/bin/yum

    # 需要检查确认以下配置

    由于此时的python已经指向python3,所以要改为明确指向python2

    #!/usr/bin/python2

    这样,修改后的yum依然可以调用python2.7的python,在使用yum安装软件时就不会报错了

    另外就是,CentOS7还有另外一个文件需要修改

    [root@localhost bin]# vi /usr/libexec/urlgrabber-ext-down

    检查确认以下配置:

    改为

    安装一个软件试试:[root@localhost bin]# yum -y install vim

  • 相关阅读:
    Excel相关函数
    慢SQL优化
    idea 添加阿里代码检查插件
    Jmeter使用自定义编写代码
    七、一些困难的测试场景:多线程、持久化存储等
    六、测试驱动开发 TDD
    五、从宏观角度考虑单元测试
    四、使用Mock对象
    三、单元测试要测试的是什么? The Right-BICP
    二、优秀单元测试的五个特征FIRST
  • 原文地址:https://www.cnblogs.com/zhongyehai/p/10444074.html
Copyright © 2011-2022 走看看