【背景】
centos 6.x系列默认的python环境是2.6.6 但是主流的python使用版本是python 2.7.x,并且有些开发django的环境,django版本1.8.x以上都需要python 3.x的版本,这个时候就很有必要多个python环境共存了,有一种管理python多版本的软件 是pyenv 很好使用,使用简单!
【系统环境】:
参考:
https://github.com/yyuu/pyenv#installation
我的环境是:
[root@master zhiliang.cui]# python -V
Python 2.6.6
[root@master zhiliang.cui]# cat /etc/issue | head -1
CentOS release 6.4 (Final)
[root@master zhiliang.cui]# python -V
Python 2.6.6
[root@master zhiliang.cui]#
【安装步骤】
回到root家目录
cd
[root@master ~]# pwd
/root
下载pyenv
git clone https://github.com/yyuu/pyenv.git ~/.pyenv
结果: 多了一个.pyenv仓库目录
[root@master ~]# ls /root/.pyenv/ CHANGELOG.md COMMANDS.md CONDUCT.md LICENSE Makefile README.md bin completions libexec plugins pyenv.d shims src test version versions
添加系统环境路径(目的是可以直接找到pyenv 命令)
echo 'export PYENV_ROOT="$HOME/.pyenv"' >> ~/.bash_profile echo 'export PATH="$PYENV_ROOT/bin:$PATH"' >> ~/.bash_profile
从新读取文件 目的是获取新的环境变量
source /root/.bash_profile
pyenv init
to your shell to enable shims and autocompletion
echo 'eval "$(pyenv init -)"' >> ~/.bash_profile
这个一定要执行,影响which python
结果:能找到pyenv环境变量了
which pyenv
/root/.pyenv/bin/pyenv
【安装你需要的python版本】
查看可以下载的所有python版本
pyenv install --list
安装版本(我这里安装python 3.4.3版本)
pyenv install 3.4.3
查看现有的版本
pyenv versions
切换指定版本
pyenv global 3.4.3
其实是改变了 /root/.pyenv/version 这个文件中的内容
(系统退出从新进入后,可以查看)
检查 系统已经默认使用的是3.4.3了
【可能对系统产生的影响】
1 yum 是依赖python的
[root@master ~]# cat /usr/bin/yum
#!/usr/bin/python
你如果yum有问题,有必要可以将#!/usr/bin/python 改成 #!/usr/bin/env python
两个的区别如下:(区别还是命令的绝对路径和PATH的关系问题)
2
python安装包的路径已经在pyenv这个软件控制版本的软件下了
每个python版本的安装软件不能公用,pip list可以查看已经安装的软件