美文网首页
Centos7配置Python3

Centos7配置Python3

作者: 橙子丨Sunty | 来源:发表于2018-10-02 13:53 被阅读0次

    Centos作为比较流行的Linux系统,经常被用作测试和生产环境部署,最新版本的Centos7自带了Python2.7,如果要用Python3就需要进行安装配置,以Python3.6.6为例。



    通过cat /etc/os-release命令可以看到系统版本信息,确认系统为Centos7,接下来一步步配置Python3.6.6。

    [root@localhost ~]$ cat /etc/os-release 
    NAME="CentOS Linux"
    VERSION="7 (Core)"
    ID="centos"
    ID_LIKE="rhel fedora"
    VERSION_ID="7"
    PRETTY_NAME="CentOS Linux 7 (Core)"
    ANSI_COLOR="0;31"
    CPE_NAME="cpe:/o:centos:centos:7"
    HOME_URL="https://www.centos.org/"
    BUG_REPORT_URL="https://bugs.centos.org/"
    
    CENTOS_MANTISBT_PROJECT="CentOS-7"
    CENTOS_MANTISBT_PROJECT_VERSION="7"
    REDHAT_SUPPORT_PRODUCT="centos"
    REDHAT_SUPPORT_PRODUCT_VERSION="7"
    

    一、更换yum源为国内的阿里云
    将yum源更换为国内的阿里云可以方便我们解决Python3依赖。
    (1)对原本的yum源进行备份

    [root@localhost /]$ mv /etc/yum.repos.d/CentOS-Base.repo /etc/yum.repos.d/CentOS-Base.repo.backup
    

    (2)下载阿里云的yum源

    [root@localhost /]$ wget -O /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-7.repo
    --2018-09-29 22:45:27--  http://mirrors.aliyun.com/repo/Centos-7.repo
    正在解析主机 mirrors.aliyun.com (mirrors.aliyun.com)... 118.212.224.103, 118.212.224.101, 118.212.224.99, ...
    正在连接 mirrors.aliyun.com (mirrors.aliyun.com)|118.212.224.103|:80... 已连接。
    已发出 HTTP 请求,正在等待回应... 200 OK
    长度:2523 (2.5K) [application/octet-stream]
    正在保存至: “/etc/yum.repos.d/CentOS-Base.repo”
    
    100%[======================================>] 2,523       --.-K/s 用时 0s      
    
    2018-09-29 22:45:27 (555 MB/s) - 已保存 “/etc/yum.repos.d/CentOS-Base.repo” [2523/2523])
    

    (3)为install生成缓存

    [root@localhost /]$ yum makecache
    已加载插件:fastestmirror, langpacks
    http://mirrors.aliyuncs.com/centos/7/os/x86_64/repodata/repomd.xml: [Errno 14] curl#7 - "Failed connect to mirrors.aliyuncs.com:80; 拒绝连接"
    正在尝试其它镜像。
    http://mirrors.cloud.aliyuncs.com/centos/7/os/x86_64/repodata/repomd.xml: [Errno 14] curl#6 - "Could not resolve host: mirrors.cloud.aliyuncs.com; 未知的名称或服务"
    正在尝试其它镜像。
    base                                                     | 3.6 kB     00:00     
    extras                                                   | 3.4 kB     00:00     
    influxdb                                                 | 2.5 kB     00:00     
    updates                                                  | 3.4 kB     00:00     
    Loading mirror speeds from cached hostfile
     * base: mirrors.aliyun.com
     * extras: mirrors.aliyun.com
     * updates: mirrors.aliyun.com
    元数据缓存已建立
    

    二、通过yum下载Python3.6.6配置安装
    (1)下载python3.6.6压缩包并解压至指定目录

    [root@localhost /]$ wget "https://www.python.org/ftp/python/3.6.6/Python-3.6.6.tgz"
    --2018-09-29 22:50:44--  https://www.python.org/ftp/python/3.6.6/Python-3.6.6.tgz
    正在解析主机 www.python.org (www.python.org)... 151.101.108.223, 2a04:4e42:1a::223
    正在连接 www.python.org (www.python.org)|151.101.108.223|:443... 已连接。
    已发出 HTTP 请求,正在等待回应... 200 OK
    长度:22930752 (22M) [application/octet-stream]
    正在保存至: “Python-3.6.6.tgz”
    
    100%[======================================>] 22,930,752  73.3KB/s 用时 5m 25s 
    
    2018-09-29 22:56:18 (68.8 KB/s) - 已保存 “Python-3.6.6.tgz” [22930752/22930752])
    

    这里解压到/tmp目录。

    [root@localhost /]$ tar -zxvf  Python-3.6.6.tgz -C /tmp
    

    (2)安装python3的依赖
    进入/tmp/python3.6.6目录执行命令安装。

    [root@localhost /]$ cd /tmp/Python-3.6.6/
    
    [root@localhost Python-3.6.6]$ yum -y groupinstall "Development tools"
    ......
    [root@localhost Python-3.6.6]$ yum install openssl-devel bzip2-devel expat-devel gdbm-devel readline-devel sqlite-devel
    ......
    

    (3)配置安装python3到指定目录
    这里配置的的目录是/usr/local

    [root@localhost Python-3.6.6]$ ./configure --prefix=/usr/local/python3
    

    安装python3 ,时间较长。

    [root@localhost Python-3.6.6]$ make
    ......
    [root@localhost Python-3.6.6]$ make install
    ......
    

    安装完毕后可以检查是否成功,可以看到Python3的软链接也已经创建成功。

    [root@localhost ~]$ python
    Python 2.7.5 (default, Nov  6 2016, 00:28:07) 
    [GCC 4.8.5 20150623 (Red Hat 4.8.5-11)] on linux2
    Type "help", "copyright", "credits" or "license" for more information.
    >>>
    
    [root@localhost ~]$ python3
    Python 3.6.6 (default, Sep 29 2018, 23:11:19) 
    [GCC 4.8.5 20150623 (Red Hat 4.8.5-11)] on linux
    Type "help", "copyright", "credits" or "license" for more information.
    >>> 
    

    我们可以查看软链接情况,python指向python2、python3指向python3.6.6。

    [root@localhost ~]$ cd /usr/bin/
    [root@localhost bin]$ ll python
    lrwxrwxrwx 1 root root 7 7月  26 2017 python -> python2
    [root@localhost bin]$ ll python3
    lrwxrwxrwx 1 root root 32 9月  29 23:33 python3 -> /usr/local/python3/bin/python3.6
    

    这里我们还可以顺便配置一下pip3的软链接,还可以将pip3升级到最新版本。

    [root@localhost bin]$ ln -s /usr/local/python3/bin/pip3 /usr/bin/pip3
    [root@localhost bin]$ pip3 list
    Package    Version
    ---------- -------
    pip        10.0.1 
    setuptools 39.0.1 
    You are using pip version 10.0.1, however version 18.1 is available.
    You should consider upgrading via the 'pip install --upgrade pip' command.
    [root@localhost bin]$ pip3 install --upgrade pip
     ......
    Successfully installed pip-18.1
    [root@localhost bin]$ pip3 list
    Package    Version
    ---------- -------
    pip        18.1   
    setuptools 39.0.1
    

    三、修改软链接配置
    如果想要python命令指向python3.6.6,可以先删除原来的python软链接文件,再将python指向python3.6.6。

    [root@localhost bin]$ rm  python 
    

    再新建python链接到python3:

    [root@localhost bin]$ ln -s /usr/local/bin/python3.6 /bin/python
    [root@localhost bin]$ python
    Python 3.6.6 (default, Sep 29 2018, 23:11:19) 
    [GCC 4.8.5 20150623 (Red Hat 4.8.5-11)] on linux
    Type "help", "copyright", "credits" or "license" for more information.
    >>> 
    

    这时的python命令就指向Python3.6.6了,当然,我不建议这么做,使用python3命令更加直观。

    如果你喜欢本文章,还请点个关注和喜欢,我会为大家不断地带来Python学习笔记。

    相关文章

      网友评论

          本文标题:Centos7配置Python3

          本文链接:https://www.haomeiwen.com/subject/aeaboftx.html