Centos7默认自带了Python2.7版本,但是因为项目需要使用Python3.x你可以按照此文的三个方法进行安装.
注:本文示例安装版本为python3.5
零、安装前准备工作
用命令 which python 查看一下Python可执行文件的位置
可见执行文件在/usr/bin/ 目录下,切换到该目录下执行 ll python* 或ls -al python*
命令查看
cd /usr/bin
$$ ll python*
[[email protected] bin]# ls -al python*
[[email protected] bin]# ls -al python*
lrwxrwxrwx. 1 root root 33 Oct 21 12:30 python -> python2
lrwxrwxrwx. 1 root root 9 Oct 19 23:55 python2 -> python2.7
-rwxr-xr-x. 1 root root 7136 Aug 4 08:40 python2.7
$ cp python python.bak
一、Python源代码编译安装
安装必要工具 yum-utils ,它的功能是管理repository及扩展包的工具 (主要是针对repository)
$ sudo yum install yum-utils
使用yum-builddep为python3构建环境,安装缺失的软件依赖,使用下面的命令会自动处理.
$ sudo yum-builddep python
完成后下载python3的源码包(笔者以python3.5为例),Python源码包目录: https://www.python.org/ftp/python/ ,截至发博当日python3的最新版本为 3.7.2
$ cd ~
$ curl -O https://www.python.org/ftp/python/3.5.0/Python-3.5.0.tgz
最后一步,编译安装python3,默认的安装目录是 /usr/local 如果你要改成其他目录可以在编译(make)前使用 configure 命令后面追加参数 “–prefix=/alternative/path” 来完成修改。
$ tar xf Python-3.5.0.tgz $ cd Python-3.5.0 $ ./configure prefix=/usr/local/python3 $ make $ make install
至此你已经在你的CentOS系统中成功安装了python3、pip3、setuptools,查看python版本
$ python3 -V
如果你要使用python3作为python的默认版本,你需要修改一下 bashrc 文件,增加一行alias参数
alias python=‘/usr/local/bin/python3.5‘
由于CentOS 7建议不要动/etc/bashrc文件,而是把用户自定义的配置放入/etc/profile.d/目录中,具体方法为
vi /etc/profile.d/python.sh
输入alias参数 alias python=’/usr/local/bin/python3.5’,保存退出
chmod 755 /etc/profile.d/python.sh
重启会话使配置生效
source /etc/profile.d/python.sh
二、从EPEL仓库安装
最新的EPEL 7仓库提供了python3(python 3.4)的安装源,如果你使用CentOS7或更新的版本的系统你也可以按照下面的步骤很轻松的从EPEL仓库安装。
安装最新版本的EPEL
$ sudo yum install epel-release
用yum安装python 3.4:
$ sudo yum install python34
注意:上面的安装方法并未安装pip和setuptools,如果你要安装这两个库可以使用下面的命令:
$ curl -O https://bootstrap.pypa.io/get-pip.py $ sudo /usr/bin/python3.4 get-pip.py
三、从SCL(Software Collections)仓库安装
最后一种方法是通过Software Collections (SCL) repository来安装,需要注意的是SCL仓库仅支持CentOS 6.5以上版本,最新版的SCL提供了python3.3版本,具体安装步骤:
$ sudo yum install python33
从SCL中使用python3,你需要一行命令来启用python3:
$ scl enable python33 <command>
您还可以使用Python编译器来调用一个bash shell:
$ scl enable python33 bash
总结
笔者建议使用前两种方法,老司机使用方法一编译安装;新手使用方法二yum二进制安装,简单方便。
原文出处:towait -> https://towait.com/blog/how-to-install-python3-on-centos/