• centos7安装较高版本python3.5/3.6


    应用环境

    Centos7或者RHEL7下默认安装的python版本为2.7.x,更新不够及时,现在很多时候需要额外安装较高版本的python环境,

    网上搜罗一圈总结记录一下常用两种方式:

           源码编译安装

           第三方SCLo源安装

    测试环境

    CentOS 7.4 minimal(虚拟机)

    安装步骤

    方法一源码编译安装(推荐)

    1. 下载源码包(官方下载:https://www.python.org/downloads/source/)

    [root@server-1 ~]# wget http://www.python.org/ftp/python/3.5.5/Python-3.5.5.tgz

    2. 安装编译依赖

    1
    [root@server-1 ~]# yum install -y zlib-devel bzip2-devel openssl-devel ncurses-devel sqlite-devel readline-devel gcc gcc-c++ make

    3. 编译安装

    [root@server-1 ~]# tar zxvf Python-3.5.5.tgz    
    [root@server-1 ~]# cd Python-3.5.5
    [root@server-1 Python-3.5.5]# ./configure --prefix=/opt/python3.5.5
    [root@server-1 Python-3.5.5]# make && make install
    

    4. 检查

    [root@server-1 Python-3.5.5]# cd /opt/python3.5.5/
    

    5. 将高版本python配置到环境变量

    [root@server-1 ~]# echo 'export PATH=$PATH:/opt/python3.5.5/bin' >> /etc/profile 
    [root@server-1 ~]# . /etc/profile
    

    6. 修改系统默认python版本为python3

    [root@server-1 ~]# mv /usr/bin/python /usr/bin/python2.7.5   //把原来的重命名
    [root@server-1 ~]# ln -s /opt/python3.5.5/bin/python3 /usr/bin/python

    7. 解决python默认版本升级后yum不能正常工作

    原因:yum报错是因为yum运行后,其配置文件中指定python(默认2.x)版本不对了,因为我们上面将高版本的python做了软连接至/usr/bin/python。

    处理:重新修改配置文件中的python指向

    [root@server-1 ~]# vim /usr/bin/yum

    保存,退出;再次运行yum命令即可正常;

    说明:其实不推荐修改系统的默认python版本,虽然方便,但是譬如以上出现的yum命令问题,虽然容易解决,但是,整个系统中不仅仅是

       yum单独这个命令用到了调用了python,还设有其他文件或者文件也用到,解决方法可以一如既往地尝试修改头部python版本,不过

       就怕万一遗忘在某次使用中。或者可以在使用python命令的时候不嫌麻烦地带上个数字3,即python3 。

    补充:需要修改python头文件的还有以下文件:

       /usr/libexec/urlgrabber-ext-down

       /usr/bin/yum-config-manager     (yum-utils包生成)

       /usr/bin/yumdownloader     (yum-utils包生成)
            ……

     方法二第三方yum源安装

    1. 下载SCLo源

    [root@server-1 ~]# yum -y install centos-release-scl-rh
    

    2. yum安装所需python版本

    [root@server-1 ~]# yum install rh-python36
    

    3. 载入环境变量

    [root@server-1 ~]# scl enable rh-python36 bash
    

    4. 检查

    5. 使开机启动生效

    [root@server-1 ~]# vim /etc/profile

    添加如下两句:

    source /opt/rh/rh-python36/enable
    
    export X_SCLS="`scl enable rh-python36 'echo $X_SCLS'`"

    说明:此种安装方式比较便捷,不过需要主机可以联网,并且部分关键字和命令不够通用熟悉。

    结束.

  • 相关阅读:
    zookeeper配置
    redis前端启动和后台启动的区别
    SpringMVC接受JSON参数详解及常见错误总结我改
    SpringMVC @RequestBody接收Json对象字符串
    spring MVC 如何接收前台传入的JSON对象数组
    springMVC 接收json字符串参数
    mysql数据库user表host字段的%问题
    mysql.user表中Host为%的含义
    开店攻略: 零售店铺经营的三大原则
    开店攻略: 如何巧妙接近顾客
  • 原文地址:https://www.cnblogs.com/ding2016/p/8417513.html
Copyright © 2020-2023  润新知