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
cdPython-3.6.1
1
在python的目录中有一个README文件,他介绍了如何安装python。--prefix=/usr/python3.6意思是指定python3安装路径
mkdir /usr/python3.6
./configure --prefix=/usr/python3.6
make
makeinstall
1
2
3
4
说明./configure命令执行完毕之后创建一个文件creating Makefile,供下面的make命令使用 执行make install之后就会把程序安装到我们指定的目录中去
在/usr/bin中有python、python2、python2.7三个文件依次指向后者,我们将python备份
cd/usr/bin
mvpythonpython.bak
ln -s /usr/python3.6/bin/python3 /usr/bin/python
1
2
3
注意我们编译安装之后在/usr/python3.6/bin下会自动生成一个python3的连接,他指向bin目录中的python3.6.
因为yum使用python2,因此替换为python3后可能无法正常工作,继续使用这个python2.7. 因此修改yum配置文件
sudovim /usr/bin/yum
1
把文件头部的#!/usr/bin/python改成#!/usr/bin/python2.7保存退出即可.
但是,只是修改这些可能还不够,在我进行yum安装的时候,显示如下错误:
[root@centos-512mb-sfo2-01~]# yum install git
已加载插件:fastestmirror
Loading mirror speedsfromcached 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", line28
exceptOSError, e:
^
SyntaxError:invalid syntax
File"/usr/libexec/urlgrabber-ext-down", line28
exceptOSError, e:
^
SyntaxError:invalid syntax
File"/usr/libexec/urlgrabber-ext-down", line28
exceptOSError, e:
^
SyntaxError:invalid syntax
File"/usr/libexec/urlgrabber-ext-down", line28
exceptOSError, 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,完成。
网友评论