对写那个版本的代码,我选择python3
只要是一个正常的能上网了的centos7,通过以下的具体操作都可以安装python3成功,和python2同时存在。
python 2.7
是2.x
系列的最后一个主要版本了,官文里说,这个版本会支持到(安全更新和修复错误)至少2020年。
centos7 已经有python 2版本了,因为python2 在系统中是一个挺重要的依赖的。
现在要安装python 3,也要保证依赖python2 的软件能正常运行。
安装软件
现在给系统安装很多模块,保证不会有依赖问题出现,这些个模块里有的可能不是创建django
项目所必须的,我还是安装了,有可能玩别的东西的时候会用得到。
打开命令行
先使用bash
命令行,用ssh
连接虚拟机(与之前写的文章里的一样)
更改软件源
安装模块前修改软件来源,改为阿里开源镜像站
,这样可以保证安装的速度
打开 https://opsx.alibaba.com/mirror
选择centos
,点击帮助
按照弹窗中的指导完成
mv /etc/yum.repos.d/CentOS-Base.repo /etc/yum.repos.d/CentOS-Base.repo.backup
cd /etc/yum.repos.d/
curl -o /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-7.repo
yum makecache
下面是我输入最后一个命令后的截图
安装所有模块
下面安装的模块可能有点长
yum -y install gcc openssl-devel zlib-devel pcre-devel sqlite-devel psmisc epel-release
yum -y install wget tar openssl krb5 krb5-devel libidn libidn-devel openssl-devel
yum -y install openldap openldap-devel nss_ldap openldap-clients openldap-servers
yum -y install glibc glibc-devel glib2 glib2-devel bzip2 bzip2-devel ncurses ncurses-devel
yum -y install curl curl-devel ssse2fsprogs e2fsprogs-devel pcre-devel python-devel libevent unzip
yum -y install gcc-c++ autoconf libjpeg libjpeg-devel libpng libpng-devel freetype freetype-devel
yum -y install libxml2 libxml2-devel zlib zlib-devel
为了全部展示,所以分了几行,可以先输入yum -y install
,然后复制所有的模块到后面,模块间不能忘空格。
20s 左右就安装完了,实在是太快了
安装python 3
我选的版本是3.6.3,为了和阿里云服务器上的python版本一致
找到正确的版本
官网的下载页 https://www.python.org/downloads/
找到3.6.3
版本
找到页面最下面,复制源码的链接
进入home 目录下载
cd /home
wget https://www.python.org/ftp/python/3.6.3/Python-3.6.3.tgz
解压
tar xf Python-3.6.3.tgz
进入目录
cd Python-3.6.3
编译安装
./configure
make
make install
安装成功后,输入python3
,看到已经安装成功了
解决py2、py3同时存在
输入命令
mv /usr/bin/python /usr/bin/python-2.7.backup
// 备份预装的python的可执行程序
ln -s /usr/local/bin/python3.6 /usr/bin/python
// 已安装的py3的可执行文件建立链接到系统默认的文件夹下,使默认的执行的python版本为py3
// 放着好多系统自带的软件的可执行文件
修改一些文件
上面的建立链接的命令把默认的python版本变成py3
因为直接输入python,可以看到版本从py2变为了py3了
有些软件的运行依赖py2,所以要修改一些内容,
下面的文件需要修改,把第一行的#! /usr/bin/python
修改为#! /usr/bin/python2.7
/usr/bin/yum
/usr/libexec/urlgrabber-ext-down
// 我防火墙一直关闭的,下面这个可选,这个没影响过我,没动过
/bin/firewall-cmd
安装成功
分别用python2
和python3
尝试。输入yum
,工具未见异常
来自公众号号:
胡里有仁