写这篇文章之前,因为项目中使用的是Py版本,但是yum依赖的是,因此需要python多版本共存。因此翻阅了很多博客,有写的不错的文章,有写的错误百出的文章。因此写下自己总结的文章,以供下次再次安装时提供便捷。
昨天写了一个直接修改软链接的多版本共存,在学习阶段是可以的。但是在正式的项目运用中,多项目的环境依赖更新会导致一些恶性后果。因此今天介绍一下多版本共存的进阶版,通过虚拟环境来实现多版本共存。
有小伙伴私信我如何用XSHELL 5远程连接阿里云,今天在这里详细的讲一下。
Xshell5远程连接阿里云服务器
A方式:阿里云生成密匙
在阿里云控制台云服务器ECS->网络和安全->密匙对->创建密匙对
2.绑定密匙对
3.在控制台重启服务器,不是直接在服务器里重启
5. 阿里云控制台云服务器ECS->网络和安全->安全组,创建安全组并应用
6.添加安全组规则
7.Xshell新建会话,添加主机IP(公网)
8.连接->用户身份验证- >方法选为public key,在下方浏览地址选择导入密匙
9.连接成功
B方式:Xshell生成公匙
1.在Xshell工具->新建用户密匙生成向导
2.按照提示操作,密码可以选填。
3.将生成的公匙代码复制,并将文件保存好
4.阿里云控制台云服务器ECS->网络和安全->密匙对->创建密匙对->导入已有的密匙,将刚才复制的公匙代码复制进去。然后按照A方式中的第2步继续操作就可以了。
CentOS 7中多python版本共存进阶
1.安装git,命令为:
#yum install -y git
2. 安装python多版本管理包pyenv
# git clone gi ~/.pyenv
3.查看bashrc
# cat ~/.bashrc
4.修改bashrc
#vi ~/.bashrc
5.使配置生效
#source ~/.bashrc
6.安装依赖环境
# yum groupinstall "Development Tools" -y
# yum install -y python-devel libevent-devel python-pip gcc xz-devel openssl-devel readline-devel sqlite-devel bzip2-devel
7.列出可安装的Python版本
# pyenv install --list
8.用国内镜像源下载Py
# wget -P ~/.pyenv/cache/
9.安装Python
# pyenv install 3.6.2 -v
10.刷新pyenv并查看版本
# pyenv rehash
# pyenv versions
11.在指定的目录中使用指定的Python版本
# mkdir py36
# cd py36/
# pwd
# pyenv local 3.6.2
# pyenv local
# python -V
# cd ..
# python -V
12.删除上面的local设置
A
# pyenv local --unset
# python -V
B
# rm -rf .python-version
# ls
# pyenv local
# python -V
原因:# pyenv global 3.5.2 # 设置全局的 Python 版本,通过将版本号写入 ~/.pyenv/version 文件的方式。
# pyenv local 3.5.2 # 设置 Python 本地版本,通过将版本号写入当前目录下的 .python-version 文件的方式。通过这种方式设置的 Python 版本优先级较 global 高。
13.安装pyenv的插件
# git clone gi ~/.pyenv/plugins/pyenv-virtualenv
插件pyenv-virtualenv会为pyenv引入一些新的命令,例如 virtualenv/virtualenv-delete 用于创建/删除虚拟环境,virtualenvs用于列出所有的虚拟环境,activate /deactivate用于激活和禁用虚拟环境
14.重新载入环境
#exec $SHELL
15.正式应用,创建虚拟环境
# mkdir venv36
# cd venv36
# ls
# pyenv virtualenv 3.6.2 env36 #创建一个 Python 版本为 3.6.2 的环境, 环境叫做 env
# pyenv versions
16.验证是否成功
#pyenv activate env36 激活 env 这个环境, 此时 Python 版本自动变为 3.6.2, 且是独立环境
#python
#exit()
# pip install ipython
#python
#import IPython
#exit()
# pyenv deactivate #离开已经激活的环境
#python
#import IPython
继续努力