昨天把redmine的测试环境给搞Over了,想了下,干脆直接把环境给整成docker化的,配置环境的时候,安装docker-compose需要python2.7支持。

CentOS 6 系统默认 Python 版本是:2.6.6 ,需要升级到 2.7 以上的库才行,记录升级过程。

1. 准备系统安装包

# 下载安装依赖的相关包
[root@vip ~]# yum install vim gcc make wget -y
[root@vip ~]# yum install openssl-devel zlib-devel readline-devel sqlite-devel -y

  

#下载python包
# cd /usr/local/src
# wget https://www.python.org/ftp/python/2.7.10/Python-2.7.10.tgz
# 解压
# tar -zxvf Python-2.7.10.tgz
# ls
Python-2.7.10 Python-2.7.10.tgz

  2. 编译配置安装

# cd Python-2.7.10
# ./configure --enable-shared --enable-loadable-sqlite-extensions \
--prefix=/usr/local/python27 --with-zlib --with-ssl
# vim ./Modules/Setup # 找到下边这一行内容,去掉注释
#zlib zlibmodule.c -I$(prefix)/include -L$(exec_prefix)/lib -lz
# make && make install

  3. 查看 python 版本信息

# python -V
Python 2.6.6
# 版本依旧是 2.6.6

  4. 用 python2.7 替换旧版本

# cd /usr/bin/
# ls python* -l # 旧 python 版本信息
-rwxr-xr-x. 2 root root 4864 2月 22 2013 python
lrwxrwxrwx. 1 root root 6 10月 22 18:38 python2 -> python
-rwxr-xr-x. 2 root root 4864 2月 22 2013 python2.6 # mv /usr/bin/python /usr/bin/python2.6.6
# ln -s /usr/local/python27/bin/python2.7 /usr/bin/python # ls python* -l
lrwxrwxrwx. 1 root root 33 10月 23 00:01 python -> /usr/local/python27/bin/python2.7
lrwxrwxrwx. 1 root root 6 10月 22 18:38 python2 -> python
-rwxr-xr-x. 2 root root 4864 2月 22 2013 python2.6
-rwxr-xr-x. 2 root root 4864 2月 22 2013 python2.6.6

  5. 重新验证 Python 版本信息

# python -V
Python 2.7.10

  

可以看到,系统识别的 python 版本已经是 python 2.7.10

  执行 python -V 遇到的问题:

python: error while loading shared libraries: libpython2.7.so.1.0: cannot open shared object file: No such file or directory
# 原因:linux系统默认没有把/usr/local/python27/lib路径加入动态库搜索路径

  解决:

# vim /etc/ld.so.conf
# 添加如下一行内容
/usr/local/python27/lib
# ldconfig # 使新添加的路径生效

  

解决 yum 兼容性问题

因为 yum 是不兼容 Python 2.7 的,所以 yum 不能正常工作,我们需要指定 yum 的 Python 为 2.6。

  1. 升级 python 后 yum 出现的问题

# yum
There was a problem importing one of the Python modules
required to run yum. The error leading to this problem was:
No module named yum
... ... ... ...

  2. 编辑 yum 配置文件

# vim /usr/bin/yum
#!/usr/bin/python
# 第一行修改为 python2.6.6
#!/usr/bin/python2.6.6

  3. 验证 yum 问题解决

# yum repolist
Loaded plugins: fastestmirror
Loading mirror speeds from cached hostfile
... ... ... ...

  

升级 python 后,安装 pip 工具

  1、首先检查linux有没有安装python-pip包,终端执行 pip -V

# pip -V
-bash: pip: command not found

  2、没有python-pip包就执行命令 yum -y install epel-release

yum -y install epel-release

  

  3、执行成功之后,再次执行yum -y install python-pip

yum -y install python-pip

  

  4、对安装好的pip进行升级 pip install --upgrade pip

pip install --upgrade pip

  

  5、pip安装好了,执行pip -V 再次检查pip环境。

pip -V
pip 9.0.1 from /usr/lib/python2.7/site-packages (python 2.7)

  

  yun安装的pip无法使用?pip更新: 

 1. 下载安装

# wget https://bootstrap.pypa.io/get-pip.py
# python get-pip.py

  2. 设置软连接

# ln -s /usr/local/python27/bin/pip2.7 /usr/bin/pip

  

安装 ipython

# pip install ipython==1.2.1
# ln -s /usr/local/python27/bin/ipython /usr/bin/ipython

  

Centos 升级 python的更多相关文章

  1. liunx CentOS 升级Python版本

    CentOS python版本是V2.6.6,升级3.4.3. 1.下载 安装包:wget http://www.python.org/ftp/python/3.4.3/Python-3.4.3.tg ...

  2. centos升级python到2.7

    最近在阿里云租了一个云主机,打算部署自己的个人网站,但是centos系统的默认Python是2.6版本,打算升级到2.7.3! 查看python的版本 #python  -V Python 2.6.6 ...

  3. 【转】Centos升级Python 2.7.12并安装pip、ipython

    Centos系统一般默认就安装有Python2.6.6版本,不少软件需要2.7以上的,通过包管理工具安装不了最新的版本,通过源码编译可以方便安装指定版本,只需要把下面版本的数字换成你想要的版本号. 1 ...

  4. CentOS升级Python的方法

    centOS内核版本为:3.10.101-1.el6.elrepo.x86_64 1,下载Python安装包 wget http://www.python.org/ftp/python/2.7.6/P ...

  5. centos升级python(从2.6.6升级到2.7.8)

    ***先安装readline,否则升级后python回退和方向键不能使用 yum install readline-devel.x86_64   1.#wget www.python.org/ftp/ ...

  6. CentOS升级Python 2.6到2.7

    查看python的版本 python -V Python 2.6.6 下载Python   Python-2.7.8.tar.xz      链接:http://pan.baidu.com/s/1i4 ...

  7. Centos升级Python及pip

    因为CentOS系统中旧版本的Python已被深度依赖,所以不能卸载原有的Python,只能全新安装. 1.从官网下载: wget https://www.python.org/ftp/python/ ...

  8. centos 升级 python后 python-setuptools pip 安装依赖报错

    解决办法: $ wget https://svn.apache.org/repos/asf/oodt/tools/oodtsite.publisher/trunk/distribute_setup.p ...

  9. CentOS升级Python到2.7版本

    查看python的版本 1 python -V Python 2.4.3 1.先安装GCC 1 yum -y install gcc 2.下载Python-2.7.2 1 wget http://py ...

随机推荐

  1. css 边框使用

    https://www.cnblogs.com/luka/p/5677241.html 1. 应用边框样式 先从控制边框样式的属性开始.简单边框有三个关键属性:border-width.border- ...

  2. PHP上传压缩包并自解压方法

    1.PHP上传压缩包并解压的大概流程: 普通上传功能->上传到服务器->加载系统组件->找到上传的文件并执行解压命令->成功解压到目录 2.php执行系统命令的几类函数: (1 ...

  3. 【python】logging

    https://docs.python.org/3/howto/logging.html import logging # create logger logger = logging.getLogg ...

  4. C++输入cin,输出cout,换行endl,getline连续读取字符

    简记:cin=键盘,cout=屏幕. >>和<<指向代表数据流动方向.<<是流插入运算符,右操作数(运算符右边的值)会被插入到输出流中. 首先要包含:#includ ...

  5. 在jstl表达式中嵌入el表达式

    一.问题 在jsp中,想要这么写: <c:url value='/resources/themes/${easyuiThemeName}/easyui.css'/> 但报错:Accordi ...

  6. 总结的比较好的OpenGL教程

    OpenGL Programming Guide(红宝书) http://www.glprogramming.com/red/ OpenGL Reference Manual(蓝宝书) http:// ...

  7. [转] 关于QT的系统总结

    出处:http://www.cnblogs.com/wangqiguo/p/4625611.html 阅读目录 编译环境与开发流程 QT项目的构成及原理 QT中的布局 QT中的通用控件 QVarian ...

  8. mysql中如何开启binlog?开启二进制日志文件?binary log?

    需求描述: 开启mysql的binlog即binary log日志功能,在此记录下. 版本描述: mysql版本:5.7.21-log 操作过程: 1.修改my.cnf并且将以下参数加入其中,重启my ...

  9. Window系统、主函数和窗体函数这三者之间的关系

    理解Window系统.主窗体.窗体函数这三者之间的关系,对于编写Windows程序十分重要. 主函数和窗体函数都是由Windows系统来调用的函数.仅仅只是主函数是程序启动之后.系统首先调用的函数: ...

  10. logstash结合rsyslog,收集系统日志

    rsyslog是日志收集工具.如今非常多Linux都自带rsyslog,用其替换掉syslog.怎样安装rsyslog就不讲了.大概讲下原理.然后讲logstash的相关配置. rsyslog本身有一 ...