centos7安装Python3.6以及解决yum不能使用问题

Centos7默认安装了python2.7 因为一些命令要用它比如yum 它使用的是python2.7

下载python3.6的包(目前最新版本是python3.6.1)

在python官网下载地址进行下载.可以使用下面的命令进行下载:

        wget https://www.python.org/ftp/python/3.6.1/Python-3.6.1.tar.xz
  • 1

下载之后是一个Python-3.6.1.tar.xz文件 (这个是pthon的源码)

解压文件

        tar -xf Python-3.6.1.tgz 
  • 1

解压之后有一个目录Python-3.6.1,进入目录

        cd Python-3.6.1
  • 1

开始安装,使用编译的方法进行安装

在python的目录中有一个README文件,他介绍了如何安装python。 --prefix=/usr/python3.6意思是指定python3安装路径

        mkdir /usr/python3.6
        ./configure --prefix=/usr/python3.6
        make
        make install
  • 1
  • 2
  • 3
  • 4

说明./configure命令执行完毕之后创建一个文件creating Makefile,供下面的make命令使用 执行make install之后就会把程序安装到我们指定的目录中去

让系统默认使用Python 3.6.1

在/usr/bin中有python、python2、python2.7三个文件依次指向后者,我们将python备份

       cd /usr/bin
       mv python python.bak
       ln -s /usr/python3.6/bin/python3 /usr/bin/python
  • 1
  • 2
  • 3

注意我们编译安装之后在/usr/python3.6/bin下会自动生成一个python3的连接,他指向bin目录中的python3.6.

修改yum文件

因为yum使用python2,因此替换为python3后可能无法正常工作,继续使用这个python2.7. 因此修改yum配置文件

       sudo vim /usr/bin/yum
  • 1

把文件头部的#!/usr/bin/python改成#!/usr/bin/python2.7保存退出即可.

但是,只是修改这些可能还不够,在我进行yum安装的时候,显示如下错误:

[root@centos-512mb-sfo2-01 ~]# yum install git
已加载插件:fastestmirror
Loading mirror speeds from cached hostfile
 * base: mirror.keystealth.org
 * elrepo: repos.lax-noc.com
 * epel: mirror.sjc02.svwh.net
 * extras: linux.mirrors.es.net
 * remi-safe: mirror.bebout.net
 * updates: mirrors.sonic.net
 * webtatic: us-east.repo.webtatic.com
  File "/usr/libexec/urlgrabber-ext-down", line 28
    except OSError, e:
                  ^
SyntaxError: invalid syntax
  File "/usr/libexec/urlgrabber-ext-down", line 28
    except OSError, e:
                  ^
SyntaxError: invalid syntax
  File "/usr/libexec/urlgrabber-ext-down", line 28
    except OSError, e:
                  ^
SyntaxError: invalid syntax
  File "/usr/libexec/urlgrabber-ext-down", line 28
    except OSError, e:
                  ^
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20
  • 21
  • 22
  • 23
  • 24
  • 25

既然显示/usr/libexec/urlgrabber-ext-down错误,那就打开/usr/libexec/urlgrabber-ext-down看看,发下他也使用了/usr/bin/python,于是跟前面一样,改为2.7,完成。

猜你喜欢

转载自blog.csdn.net/zhongranxu/article/details/79859234