centos如何安装python3并与python2共存
首页 > VPS    作者:wiz   2018年9月19日 22:20 星期三   热度:651°   已自动提交收录  
时间:2018-9-19 22:20   热度:651° 

centos一般默认安装了python2,但如果想安装python3,那么该如何操作呢?

直接输入python可以看到如下信息。

安装python3-3.jpg

我们可以看到当前系统版本为2.7.5,并且python命令指向的是python2,接下里我们就要介绍如何安装python3的版本并且与python2能够共存。

1)在安装之前我们需要先备份python2

cd /usr/bin/  “进入目录

mv python python.bak  “备份(其实是改名)

2)在正式安装python3之前需要安装依赖包,直接给出命令

yum install zlib-devel bzip2-devel openssl-devel ncurses-devel sqlite-devel readline-devel tk-devel gcc make

安装python3 2.jpg

(3)下载源码包及编译安装

这里采用wget命令,默认下载路径为当前目录,可以通过pwd来查看当前目录,这里推荐将文件下载到一个统一的目录里,我们在根目录下新建一个download目录:

cd /  “切换到根目录

md download  “新建download目录

wget https://www.python.org/ftp/python/3.7.0/Python-3.7.0.tar.xz  “下源python3最新版本的源文件

安装python3.jpg

tar -xvJf  Python-3.7.0.tar.xz  “解压下载下来的文件

“-x 从档案文件中释放文件

-f 使用档案文件或设备,这个选项通常是必选的。

-v 详细报告tar处理的文件信息。如无此选项,tar不报告文件信息.

-j 是否同时具有 bzip2 的属性,亦即是否需要用 bzip2压缩

cd Python-3.7.0  “切换进目录

安装python3-4.jpg

./configure prefix=/usr/local/python3 “指定安装目录为/usr/local/python3

另参考:./configure prefix命令详解

在Linux上编译安装软件时,经常遇到./configure prefix=usr这个命令。./configure prefix是什么意思呢?下面简单介绍一下./configure prefix 的用法。

源码的安装一般由有这三个步骤:配置(configure)、编译(make)、安装(make install)。

Configure是一个可执行脚本,它有很多选项,在待安装的源码路径下使用命令./configure help输出详细的选项列表

其中 prefix选项就是配置安装的路径,如果不配置该选项,安装后可执行文件默认放在/usr /local/bin,库文件默认放在/usr/local/lib,配置文件默认放在/usr/local/etc,其它的资源文件放在/usr /local/share,比较分散。

为了便于集中管理某个软件的各种文件,可以配置—prefix,如:

./configure prefix=/usr/local

可以把所有资源文件放在/usr/local的路径中,就不会分散了。

用了prefix选项的另一个好处是卸载软件或移植软件。当某个安装的软件不再需要时,只须简单地删除该安装目录,就可以把软件卸载得干干净净;移植软件只需拷贝整个目录到另外一个机器即可(相同的操作系统)。

当然要卸载程序,也可以在原来的make目录下用一次make uninstall,但前提是make文件指定过uninstall。

make && make install  “编译安装

遇到错误ModuleNotFoundError: No module named '_ctypes'

安装python3-5.jpg

问题分析:

Python3 中有个内置模块叫 ctypes,它是 Python3 的外部函数库模块,它提供兼容 C 语言的数据类型,并通过它调用 Linux 系统下的共享库(Shared library),此模块需要使用 CentOS 7 系统中外部函数库(Foreign function library)的开发链接库(头文件和链接库)。

所以错误原因是:在 CentOS 7 系统中没有安装外部函数库(软件包名:libffi)的开发链接库软件包。

解决办法:

CentOS 7 系统下外部函数库(libffi)的开发链接库软件包是 libffi-devel,只要安装此软件包即可解决 ModuleNotFoundError: No module named '_ctypes' 错误。

CentOS 7 系统下使用如下命令安装 libffi-devel 软件包:

sudo yum -y install libffi-devel

安装python3-6.jpg

执行yum是需要python2的,所以需要修改yum的配置。

vi /usr/bin/yum “修改配置文件。将#! /usr/bin/python修改为#! /usr/bin/python2

vi /usr/libexec/urlgrabber-ext-down  “修改配置文件。将 #! /usr/bin/python修改为 #! /usr/bin/python2

修改完之后重新执行命令:sudo yum -y install libffi-devel

安装 libffi-devel 软件包后,重新编译安装,即可完成 Python 3.7 的安装。

另附vi简明操作手册

vi命令是UNIX操作系统和类UNIX操作系统中最通用的全屏幕纯文本编辑器。Linux中的vi编辑器叫vim,它是vi的增强版(vi Improved),与vi编辑器完全兼容,而且实现了很多增强功能。

vi编辑器支持编辑模式和命令模式,编辑模式下可以完成文本的编辑功能,命令模式下可以完成对文件的操作命令,要正确使用vi编辑器就必须熟练掌握着两种模式的切换。默认情况下,打开vi编辑器后自动进入命令模式。从编辑模式切换到命令模式使用“esc”键,从命令模式切换到编辑模式使用“A”、“a”、“O”、“o”、“I”、“i”键。

vi编辑器提供了丰富的内置命令,有些内置命令使用键盘组合键即可完成,有些内置命令则需要以冒号“:”开头输入。常用内置命令如下:


Ctrl+u:向文件首翻半屏;

Ctrl+d:向文件尾翻半屏;

Ctrl+f:向文件尾翻一屏;

Ctrl+b:向文件首翻一屏;

Esc:从编辑模式切换到命令模式;

ZZ:命令模式下保存当前文件所做的修改后退出vi;

:行号:光标跳转到指定行的行首;

:$:光标跳转到最后一行的行首;

x或X:删除一个字符,x删除光标后的,而X删除光标前的;

D:删除从当前光标到光标所在行尾的全部字符;

dd:删除光标行正行内容;

ndd:删除当前行及其后n-1行;

nyy:将当前行及其下n行的内容保存到寄存器?中,其中?为一个字母,n为一个数字;

p:粘贴文本操作,用于将缓存区的内容粘贴到当前光标所在位置的下方;

P:粘贴文本操作,用于将缓存区的内容粘贴到当前光标所在位置的上方;

/字符串:文本查找操作,用于从当前光标所在位置开始向文件尾部查找指定字符串的内容,查找的字符串会被加亮显示;

?name:文本查找操作,用于从当前光标所在位置开始向文件头部查找指定字符串的内容,查找的字符串会被加亮显示;

a,bs/F/T:替换文本操作,用于在第a行到第b行之间,将F字符串换成T字符串。其中,“s/”表示进行替换操作;

a:在当前字符后添加文本;

A:在行末添加文本;

i:在当前字符前插入文本;

I:在行首插入文本;

o:在当前行后面插入一空行;

O:在当前行前面插入一空行;

:wq:在命令模式下,执行存盘退出操作;

:w:在命令模式下,执行存盘操作;

:w!:在命令模式下,执行强制存盘操作;

:q:在命令模式下,执行退出vi操作;

:q!:在命令模式下,执行强制退出vi操作;

:e文件名:在命令模式下,打开并编辑指定名称的文件;

:n:在命令模式下,如果同时打开多个文件,则继续编辑下一个文件;

:f:在命令模式下,用于显示当前的文件名、光标所在行的行号以及显示比例;

:set number:在命令模式下,用于在最左端显示行号;

:set nonumber:在命令模式下,用于在最左端不显示行号;


ln -s /usr/local/python3/bin/python3 /usr/bin/python “添加软链接到执行目录/usr/bin下

python   “测试安装成功没有,如果版本信息为python 3.7.0则表示安装成功。

安装python3-7.jpg

pyton2   “测试python2版本是否还存在

安装python3-8.jpg

测试python2与python3共存,输入python默认使用python3

可以输入ll python* 查看详细信息。

安装python3-9.jpg

grep -ai /usr/bin/python /usr/bin/*  “查看哪些使用了python2可以根据需要修改。

二维码加载中...
本文作者:wiz      文章标题: centos如何安装python3并与python2共存
本文地址:http://wiz.im/vps/16.html
版权声明:若无注明,本文皆为“巍子博客--追求卓越”原创,转载请保留文章出处。
找果树2018-09-21 15:52
看起来非常厉害的样子,值得学习的地方很多啊,会继续关注博主的
weiming2018-09-20 15:25
正好需要这个教程,谢谢!

返回顶部    首页    手机版本    后花园  
版权所有:巍子博客--追求卓越    站长: wiz    程序:emlog        sitemap