Centos 7安装python3

Centos 7安装python3

安装依赖包

yum -y groupinstall "Development tools"
yum -y install zlib-devel bzip2-devel openssl-devel ncurses-devel sqlite-devel readline-devel tk-devel gdbm-devel db4-devel libpcap-devel xz-devel libffi-devel

2.7版本备份

默认Centos7中是有python安装的,但是是2.7版本,我们需要安装python3。我们去查找一下默认的python2.7安装目录。

[root@VM_0_14_centos ~]# cd /usr/bin/
[root@VM_0_14_centos bin]# ls python*
python  python2  python2.7
[root@VM_0_14_centos bin]#

三个显示结果中最后一个是python2.7,实际上这几个文件之间是有依赖关系的。在ls 后面加个 -al参数,如下:

[root@VM_0_14_centos bin]# ls -al python*
lrwxrwxrwx. 1 root root    7 Aug  8 11:10 python -> python2
lrwxrwxrwx. 1 root root    9 Aug  8 11:10 python2 -> python2.7
-rwxr-xr-x. 1 root root 7216 Apr 11  2018 python2.7
[root@VM_0_14_centos bin]#

依赖关系很明显就可以看到。我们要安装版本3,首先要把刚才显示的三个python文件中的第一个python给备份一下(不保留源文件,仅保留备份文件就可以)

使用如下命令:

[root@VM_0_14_centos bin]# mv python python.bak

python文件变成了python.bak文件,bak文件就放这里,再也不用管它了。避免以后麻烦,就留在这里不用删除。系统准备好了,接下来,我们要去下载了。

下载,编译,安装

python版本下载地址 https://www.python.org/ftp/python/ ,我们选择3.6.3进行下载
下载地址:https://www.python.org/ftp/python/3.6.3/Python-3.6.3.tgz
链接准备好了,我们在Centos 7上创建一个目录吧。一般选择的是/usr/local里面的,如下命令

[root@VM_0_14_centos ~]# mkdir /usr/local/python3

目录创建好了,我们就cd切换进去就好了。

[root@VM_0_14_centos ~]# mkdir /usr/local/python3
[root@VM_0_14_centos ~]# cd /usr/local/python3/
[root@VM_0_14_centos python3]# ll
total 0

把安装源码下载到这个目录下就OK,命令如下:

[root@VM_0_14_centos python3]# wget https://www.python.org/ftp/python/3.6.3/Python-3.6.3.tgz
--2019-01-11 10:08:49--  https://www.python.org/ftp/python/3.6.3/Python-3.6.3.tgz
Resolving www.python.org (www.python.org)... 151.101.40.223, 2a04:4e42:11::223
Connecting to www.python.org (www.python.org)|151.101.40.223|:443... connected.
HTTP request sent, awaiting response... 200 OK
Length: 22673115 (22M) [application/octet-stream]
Saving to: ‘Python-3.6.3.tgz’

100%[========================================================================================================================================================================>] 22,673,115  2.26MB/s   in 9.3s

2019-01-11 10:08:59 (2.33 MB/s) - ‘Python-3.6.3.tgz’ saved [22673115/22673115]

等待下载完成之后会在当前目录下出现一个tgz包,命令解压这个包到当前目录就可以:

[root@VM_0_14_centos python3]# tar -xvf Python-3.6.3.tgz

解压完成后,查看目录下文件

[root@VM_0_14_centos python3]# ll
total 22148
drwxr-xr-x 16  501  501     4096 Oct  3  2017 Python-3.6.3
-rw-r--r--  1 root root 22673115 Oct  3  2017 Python-3.6.3.tgz

就要开始安装了,因为下载的包是未编译的,我们需要编译一下。
进入文件目录:

[root@VM_0_14_centos python3]# cd Python-3.6.3/
[root@VM_0_14_centos Python-3.6.3]#

检查依赖,兼容,预编译, 指定安装目录

./configure --prefix=/usr/local/python3Dir

稍微解释上面这句命令,这句话的大致目的就是把python的安装目录指定一下,这样的话,里面的一些bin目录、lib目录就都会存放在这个目录下面。如果不指定这个安装目录的话,最后python的安装文件将分散到linux的默认目录,不在一块。我们指定安装目录,以后卸载的话直接删除目录就可以干净卸载了。

现在我们当前目录还是在/usr/local/python3/Python-3.6.3,执行如下命令:

[root@VM_0_14_centos Python-3.6.3]# make

编译完毕进行安装

[root@VM_0_14_centos Python-3.6.3]# make install

安装完成,切换到/usr/local/python3Dir目录下去查看

[root@VM_0_14_centos Python-3.6.3]# cd /usr/local/python3Dir/
[root@VM_0_14_centos python3Dir]# ll
total 16
drwxr-xr-x 2 root root 4096 Jan 11 10:38 bin
drwxr-xr-x 3 root root 4096 Jan 11 10:38 include
drwxr-xr-x 4 root root 4096 Jan 11 10:38 lib
drwxr-xr-x 3 root root 4096 Jan 11 10:38 share

创建软链接

创建python3软链接

[root@VM_0_14_centos python3Dir]# ln -s /usr/local/python3Dir/bin/python3 /usr/bin/python

创建pip3软链接

[root@VM_0_14_centos python3Dir]# ln -s /usr/local/python3Dir/bin/pip3 /usr/bin/pip3

修复yum

centos的yum命令是需要python支持,重新安装后的python已更新成3.6.3版本,我们需要重新将yum指向2.7版本
使用vi 打开yum

[root@VM_0_14_centos python3Dir]# vi /usr/bin/yum

把文件开头第一行的
#!/usr/bin/python改成#!/usr/bin/python2.7 这样就可以了。
然后,下面保存退出。注意步骤。
首先按下ESC,然后 输入: 这个符号(需要shift组合键的)。然后输入wq
然后回车就可以保存退出,回到终端界面了

补充:这个文件也要修改
vim /usr/libexec/urlgrabber-ext-down
将/usr/bin/python改为/usr/bin/python2.7。

vim /usr/bin/firewall-cmd,
将#!/usr/bin/python -Es 改为 #!/usr/bin/python2.7 -Es

vim /usr/sbin/firewalld,
将#!/usr/bin/python -Es 改为 #!/usr/bin/python2.7 -Es (这一步是针对于防火墙报错,进行的修改)

测试使用

查看一下链接情况:

[root@VM_0_14_centos python3Dir]# cd /usr/bin/
[root@VM_0_14_centos bin]# ll -a python*
lrwxrwxrwx  1 root root   33 Jan 11 10:44 python -> /usr/local/python3Dir/bin/python3
lrwxrwxrwx. 1 root root    9 Aug  8 11:10 python2 -> python2.7
-rwxr-xr-x. 1 root root 7216 Apr 11  2018 python2.7
lrwxrwxrwx. 1 root root    7 Aug  8 11:10 python.bak -> python2
[root@VM_0_14_centos bin]#

然后查看一下当前的python版本

[root@VM_0_14_centos bin]# python -V
Python 3.6.3

然后来个hello world测试一下:
先输入python进入,然后写代码:

[root@VM_0_14_centos bin]# python
Python 3.6.3 (default, Jan 11 2019, 10:34:40)
[GCC 4.8.5 20150623 (Red Hat 4.8.5-36)] on linux
Type "help", "copyright", "credits" or "license" for more information.
>>> print('Hello World')
Hello World
>>>

安装成功!!!

django安装

[root@localhost python3Dir]# pip3 install django==2.1.8
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值