#!/bin/bash

 #       、检查当前系统Python版本

 python_old_version=$(python -V >& | awk '{print $2}')
echo "当前系统Python版本为: $python_old_version" # 、检查当前系统网络连接,是否能够访问Python镜像站点 curl -s -k -I http://mirrors.sohu.com/python/ |grep '200 OK' >/dev/null
if [ $? != ]
then
echo 无法访问Python镜像站点,请检查网络连接
exit
fi # 、获取Python官方最新版本信息 python_last_27version=$(curl -s -k http://mirrors.sohu.com/python/ |awk -F '/|>' '{print $3}' |grep '^2.7.*' |sort -t '.' -k3 -n |tail -1)
echo "官方最新Python2.7版本为:$python_last_27version" # 、对比当前系统Python版本与官方最新版本号 if [ $python_old_version = $python_last_27version ]
then
echo '当前已是最新版本,无需升级'
exit
fi # 、下载最新版本Python安装包 yum install -y wget readline readline-devel
mkdir -p /tmp/python_tmp_dir
wget -P /tmp/python_tmp_dir/ http://mirrors.sohu.com/python/$python_last_27version/Python-$python_last_27version.tar.xz # 、解压Python源码包 tar xf /tmp/python_tmp_dir/Python-$python_last_27version.tar.xz -C /tmp/python_tmp_dir/ # 、编译前的准备工作:准备安装目录 mkdir -p /usr/local/python27
cd /tmp/python_tmp_dir/Python-$python_last_27version
./configure --prefix=/usr/local/python27 # 、编译并安装Python make -j$(cat /proc/cpuinfo | grep processor |wc -l) && make install # 、升级Python至官方最新版 mv /usr/bin/python /usr/bin/python$python_old_version
ln -s /usr/local/python27/bin/python /usr/bin/python # 、清理安装过程中产生的文件 rm -rf /tmp/python_tmp_dir/ # 、默认只升级python会导致yum不可用,此处自动修复该问题 sed -i '1s@#!/usr/bin/python@#!/usr/bin/python'$python_old_version'@' /usr/bin/yum
sed -i '1s@#!/usr/bin/python@#!/usr/bin/python'$python_old_version'@' /usr/libexec/urlgrabber-ext-down &>/dev/null
yum --version &>/dev/null && echo "Python 升级对 YUM 无影响" || echo "Python 升级导致 YUM 无法使用"

自动升级CentOS Python至官方最新版的更多相关文章

  1. 超级MINI STLINK V2 官方固件自动升级 ST-Link 【worldsing 笔记】

    简介: 支持所有带SWIM接口的STM8系列单片机 支持所有带SWD接口的STM32系列单片机 完全兼容Keil,STVP,STVD,IAR,COSMIC,STM32 ST-LINK Utility! ...

  2. CentOS 7.0 下 Python 2.7 升级到 Python 3.5

    前段因为时间工作需要,要把 Centos 7.0 默认安装的 Python 2.7 升级到 Python 3.5. 具体操作如下: # 安装 gcc gcc-c++ 等编译工具软件 yum insta ...

  3. 基于esky实现python应用的自动升级

    一.esky介绍 Esky is an auto-update framework for frozen Python applications. It provides a simple API t ...

  4. 关闭centos自动升级内核

    八.关闭Centos自动更新chkconfig --list yum-updatesd  #显示当前系统状态yum-updatesd    0:关闭  1:关闭  2:启用  3:启用  4:启用  ...

  5. 【转】【Mac系统】之Python版本切换、谷歌浏览器取消自动升级

    都是很有用的文章,本文都是转载文章,以便后续查阅: Mac Chrome浏览器取消自动升级(看这一篇就够了) <Mac修改默认python版本> <mac设置python版本切换,和 ...

  6. python使用selenium驱动chromium防止浏览器自动升级失效!

    python爬虫或者自动化项目中有时会用到selenium自动化测试框架,驱动chrom时由于谷歌浏览器自动升级,会造成驱动和浏览器版本不匹配问题,这时可以用到Chromium,这是谷歌推出用于开发目 ...

  7. Code First 迁移----官方 应用程序启动时自动升级(MigrateDatabaseToLatestVersion 初始值设定项)

    Code First 迁移 如果使用的是 Code First 工作流,推荐使用 Code First 迁移改进应用程序的数据库架构. 迁移提供一组允许以下操作的工具: 创建可用于 EF 模型的初始数 ...

  8. Ionic实战 自动升级APP(Android版)

    Ionic 框架介绍 Ionic是一个基于Angularjs.可以使用HTML5构建混合移动应用的用户界面框架,它自称为是"本地与HTML5的结合".该框架提供了很多基本的移动用户 ...

  9. 自动升级系统OAUS的设计与实现(续) (附最新源码)

    (最新OAUS版本请参见:自动升级系统的设计与实现(续2) -- 增加断点续传功能) 一.缘起 自从 自动升级系统的设计与实现(源码) 发布以后,收到了很多使用者的反馈,其中最多的要求就是希望OAUS ...

随机推荐

  1. Java-System.getProperty()

    Java平台使用了一个Poperties对象来维护其自己的配置信息.System泪中包含有一个Properties对象用于描述当前工作环境的配置.系统properties包含了关于当前用户.当前Jav ...

  2. [转帖]2016年时的新闻:ASP.NET Core 1.0、ASP.NET MVC Core 1.0和Entity Framework Core 1.0

    ASP.NET Core 1.0.ASP.NET MVC Core 1.0和Entity Framework Core 1.0 http://www.cnblogs.com/webapi/p/5673 ...

  3. 剑指offer:滑动窗口的最大值

    滑动窗口的最大值 题目描述 给定一个数组和滑动窗口的大小,找出所有滑动窗口里数值的最大值.例如,如果输入数组{2,3,4,2,6,2,5,1}及滑动窗口的大小3,那么一共存在6个滑动窗口,他们的最大值 ...

  4. js控制浏览器全屏

    HTML 5中的full screen,目前可以在除IE和opera外的浏览器中使用 ,有的时候用来做全屏API,游戏呀,等都很有用.先看常见的API element.requestFullScree ...

  5. 下载系统已经安装的rpm包

    下载系统已经安装的rpm包 yum -y install yum-utils 安装yum下载工具 yumdownloader mysql 用yum下载到当前目录 实例:查询mysql安装包[root@ ...

  6. FFT ip core

    The FFT core provides four architecture options to offer a trade-off权衡取舍 between core size andtransf ...

  7. codeforces659B

    Qualifying Contest CodeForces - 659B Very soon Berland will hold a School Team Programming Olympiad. ...

  8. BZOJ3456 城市规划 【生成函数】【FFT】

    题目分析: 容易想到生成函数的构造方法. 令g(n)表示n个点的无向图个数,f(n)表示n个点的无向连通图的个数.式子是显然的. 容易发现式子是卷积的形式,写出生成函数,然后多项式求逆后多项式乘法即可 ...

  9. sharepoint my site setting

    参考这个guide : http://technet.microsoft.com/en-us/library/ee624362.aspx User profile service 不能打开, 原因是s ...

  10. bzoj4571/luogu3293 美味 (主席树+贪心)

    首先想到建出可持久化trie树然后在上面贪心,但是它加了一个数所以不能这么做 但依然可以贪心,仿照上面那个的过程,如果设y是在第i位上^b是1的数(前面的位数已经贪好了),我只要在[l,r]范围内能有 ...