不熟悉linux系统,软件相关配置,安装及设置无疑是令人头痛的问题,借助度娘无疑是需要花费很多时间去排错以及尝试,网络上有很多云服务器关于py2与py3共存的配置方法与教程,然而每次本渣渣配置都无疾而终,总是卡在某一个步骤上,百思不得其解。

亲测可行,华为云服务器py2与py3共存配置方法与命令_PY3

云服务器上由于有着yum的存在,必须保留py2版本的python,而现在流行使用的是py3,这就导致了一系列的配置问题,尤其是对于本渣渣级别的小白选手,百度了无数相关教程,尤其是csdn上的,无疑都是复制粘贴的内容,毫无新意,好在找到了华为云开发者官方的配置教程,以此记录分享给大家!

环境工具一览

  • 服务器:华为云HECS(云耀云服务器)

  • 系统:CentOS 7.5 64bit

  • 链接工具:Xshell6 免费版

华为云服务器py2与py3共存配置方法与命令

1.依次执行以下命令安装所需依赖:

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

2.执行以下命令下载Python安装包:

wget https://sandbox-experiment-resource-north-4.obs.cn-north-4.myhuaweicloud.com/python-spider-rds/Python-3.5.5.tgz

3.执行以下命令解压Python安装包:

tar -zxvf Python-3.5.5.tgz && cd Python-3.5.5/

4.执行以下命令编译程序:

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

5.执行以下命令安装Python:

make && make install

6.执行以下命令建立软连接(命令无回显):

ln -s /usr/local/python3/bin/python3 /usr/bin/python3 && ln -s /usr/local/python3/bin/pip3 /usr/bin/pip3

7.依次执行以下命令安装依赖:

yum install gcc libffi-devel python-devel openssl-devel -y

yum install libxslt-devel -y

8.执行以下命令升级pip:

pip3 install -i https://pypi.tuna.tsinghua.edu.cn/simple --upgrade pip

亲测可行,华为云服务器py2与py3共存配置方法与命令_PY2_02


亲测可行,华为云服务器py2与py3共存配置方法与命令_PY3_03

华为云服务器py2与py3共存配置方法与命令讲解

  • 步骤一:依次执行以下命令安装所需依赖。

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

注:实测,以上两个命令未运行的话,大概率pip3是安装不上的,安装了python3版本也是没有配套的pip3!

命令讲解:

yum install和yum groupinstall都是安装软件dao的意思,du而yum install 是安装指定的单zhi个软件,在linux中有些单个软件会有依dao赖关系,专必须配合其属他的安装包一起安装才能运行生效,所以为了软件安装不出错必须把这个软件的相关软件一起装了。

yum install :安装单个软件

yum grouplist :查看这个软件的所有软件包,每次安装前可以先查看yum grouplist有哪些软件,然后再去安装yum groupinstall

yum groupinstall :安装多个软件,安装这个软件的所有依赖的软件包,yum groupinstall安装的时候软件包名必须加双引号

  • 步骤二:执行以下命令下载Python安装包:

wget https://sandbox-experiment-resource-north-4.obs.cn-north-4.myhuaweicloud.com/python-spider-rds/Python-3.5.5.tgz

命令讲解:

wget虽然功能强大,但是使用起来还是比较简单的,基本的语法是:wget [参数列表] URL。

  • 步骤三:执行以下命令解压Python安装包:

tar -zxvf Python-3.5.5.tgz && cd Python-3.5.5/

命令讲解:

tar支持将多个文件包成一个文件,同时还可通过gzip/bzip将该文件压缩。

目前window的winRAR也支持.tar.gz文件解压。

解压文件方式一

tar -jxv -f 压缩文件名称.tar.br2 -C 指定文件目录

解压文件方式二

tar -zxv -f 压缩文件名称.tar.gz

  • 步骤四:执行以下命令编译程序:

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

命令讲解:

'configure'脚本有大量的命令行选项.对不同的软件包来说,这些选项可能会有变化,但是许多基本的选项是不会改变的.带上'--help'选项执行'configure'脚本可以看到可用的所有选项.尽管许多选项是很少用到的,但是当你为了特殊的需求而configure一个包时,知道他们的存在是很有益处的.

--prefix=PEWFIX   '--prefix'是最常用的选项.制作出的'Makefile'会查看随此选项传递的参数,当一个包在安装时可以彻底的重新安置他的结构独立部分. 举一个例子,当安装一个包,例如说Emacs,下面的命令将会使Emacs Lisp file被安装到"/opt/gnu/share": $ ./configure --prefix=/opt/gnu

--exec-prefix=EXEC-PREFIX
你可以把体系相关的文件安装到一个不同的位置,   EXEC-PREFIX,而不是   PREFIX   设置的地方.这样做可以比较方便地在不同主机之间共享体系相关的文件.   如果你省略这些,那么   EXEC-PREFIX   就会被设置为等于   PREFIX   并且体系相关和体系无关的文件都会安装到同一棵目录树下,   这也可能是你想要的.

  • 步骤五:执行以下命令安装Python:

make && make install

命令讲解:

/configure配置环境 make是编译的意思。就是把源码包编译成二进制可执行文件 make install 就是安装的意思。

make&& make install的意思是:make与makeinstall是两个命令,在你./configuration生成了Makefile之后执行编译安装;与&&一起的还有||,不过意思不一样,&&是与,||是或;make && makeinstall的意思就是执行make如果没有发生错误就执行make install

  • 步骤六:执行以下命令建立软连接(命令无回显):

ln -s /usr/local/python3/bin/python3 /usr/bin/python3 && ln -s /usr/local/python3/bin/pip3 /usr/bin/pip3

命令讲解:

【硬连接】 硬连接指通过索引节点来进行连接。在Linux的文件系统中,保存在磁盘分区中的文件不管是什么类型都给它分配一个编号,称为索引节点号(Inode Index)。在Linux中,多个文件名指向同一索引节点是存在的。一般这种连接就是硬连接。硬连接的作用是允许一个文件拥有多个有效路径名,这样用户就可以建立硬连接到重要文件,以防止“误删”的功能。其原因如上所述,因为对应该目录的索引节点有一个以上的连接。只删除一个连接并不影响索引节点本身和其它的连接,只有当最后一个连接被删除后,文件的数据块及目录的连接才会被释放。也就是说,文件真正删除的条件是与之相关的所有硬连接文件均被删除。

【软连接】 另外一种连接称之为符号连接(Symbolic Link),也叫软连接。软链接文件有类似于Windows的快捷方式。它实际上是一个特殊的文件。在符号连接中,文件实际上是一个文本文件,其中包含的有另一文件的位置信息。

ln -s 是linux中一个非常重要命令,一定要熟悉。它的功能是为某一个文件在另外一个位置建立一个同不的链接,这个命令最常用的参数是-s,具体用法是:ln -s 源文件 目标文件。

当我们需要在不同的目录,用到相同的文件时,我们不需要在每一个需要的目录下都放一个必须相同的文件,我们只要在某个固定的目录,放上该文件,然后在其它的目录下用ln命令链接(link)它就可以,不必重复的占用磁盘空间。

例如:ln -s /bin/less /usr/local/bin/less -s 是代号(symbolic)的意思。

这里有两点要注意:第一,ln命令会保持每一处链接文件的同步性,也就是说,不论你改动了哪一处,其它的文件都会发生相同的变化;第二,ln的链接又软链接 和硬链接两种,软链接就是

ln -s ** **,它只会在你选定的位置上生成一个文件的镜像,不会占用磁盘空间,硬链接ln ** **,没有参数-s, 它会在你选定的位置上生成一个和源文件大小相同的文件,无论是软链接还是硬链接,文件都保持同步变化。

  • 步骤七:依次执行以下命令安装依赖:

yum install gcc libffi-devel python-devel openssl-devel -y

yum install libxslt-devel -y

命令讲解:

yum install :安装单个软件,同上,配置安装相关环境!

  • 步骤八:执行以下命令升级pip:

pip3 install -i https://pypi.tuna.tsinghua.edu.cn/simple --upgrade pip

命令讲解:

升级pip,pip3 install 安装命令,i指定镜像源

  • 1,清华源

pip3 install -i https://pypi.tuna.tsinghua.edu.cn/simple virtualen

  • 2,豆瓣源

pip3 install -i https://pypi.douban.com/simple requests

参考来源:

使用Python爬虫抓取图片和文字实验

https://lab.huaweicloud.com/testdetail.html?testId=468&ticket=ST-1363346-YzykQhBcmiNeURp6pgL0ahIy-sso

亲测可行,华为云服务器py2与py3共存配置方法与命令_PY2_04      

微信公众号:二爷记

不定时分享python源码及工具