自动升级CentOS Python至官方最新版
#!/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至官方最新版的更多相关文章
- 超级MINI STLINK V2 官方固件自动升级 ST-Link 【worldsing 笔记】
简介: 支持所有带SWIM接口的STM8系列单片机 支持所有带SWD接口的STM32系列单片机 完全兼容Keil,STVP,STVD,IAR,COSMIC,STM32 ST-LINK Utility! ...
- CentOS 7.0 下 Python 2.7 升级到 Python 3.5
前段因为时间工作需要,要把 Centos 7.0 默认安装的 Python 2.7 升级到 Python 3.5. 具体操作如下: # 安装 gcc gcc-c++ 等编译工具软件 yum insta ...
- 基于esky实现python应用的自动升级
一.esky介绍 Esky is an auto-update framework for frozen Python applications. It provides a simple API t ...
- 关闭centos自动升级内核
八.关闭Centos自动更新chkconfig --list yum-updatesd #显示当前系统状态yum-updatesd 0:关闭 1:关闭 2:启用 3:启用 4:启用 ...
- 【转】【Mac系统】之Python版本切换、谷歌浏览器取消自动升级
都是很有用的文章,本文都是转载文章,以便后续查阅: Mac Chrome浏览器取消自动升级(看这一篇就够了) <Mac修改默认python版本> <mac设置python版本切换,和 ...
- python使用selenium驱动chromium防止浏览器自动升级失效!
python爬虫或者自动化项目中有时会用到selenium自动化测试框架,驱动chrom时由于谷歌浏览器自动升级,会造成驱动和浏览器版本不匹配问题,这时可以用到Chromium,这是谷歌推出用于开发目 ...
- Code First 迁移----官方 应用程序启动时自动升级(MigrateDatabaseToLatestVersion 初始值设定项)
Code First 迁移 如果使用的是 Code First 工作流,推荐使用 Code First 迁移改进应用程序的数据库架构. 迁移提供一组允许以下操作的工具: 创建可用于 EF 模型的初始数 ...
- Ionic实战 自动升级APP(Android版)
Ionic 框架介绍 Ionic是一个基于Angularjs.可以使用HTML5构建混合移动应用的用户界面框架,它自称为是"本地与HTML5的结合".该框架提供了很多基本的移动用户 ...
- 自动升级系统OAUS的设计与实现(续) (附最新源码)
(最新OAUS版本请参见:自动升级系统的设计与实现(续2) -- 增加断点续传功能) 一.缘起 自从 自动升级系统的设计与实现(源码) 发布以后,收到了很多使用者的反馈,其中最多的要求就是希望OAUS ...
随机推荐
- Docker 方式运行 sonarqube
From 平台测试部同事的 ppt 感谢. 拉取镜像 docker pull postgres docker pull sonarqube 运行镜像 docker run --name db --re ...
- visual studio 和 sql server 的激活密钥序列号
VS2010: YCFHQ-9DWCY-DKV88-T2TMH-G7BHP VS2013: BWG7X-J98B3-W34RT-33B3R-JVYW9 VS2015: 专业版:HMGNV-WCYXV- ...
- BZOJ1798[Ahoi2009]维护序列——线段树
题目描述 老师交给小可可一个维护数列的任务,现在小可可希望你来帮他完成. 有长为N的数列,不妨设为a1,a2,…,aN .有如下三种操作形式: (1)把数列中的一段数全部乘一个值; (2 ...
- Cuba获取属性文件中的配置
最直接的办法是,使用AppContext.getProperty("cuba.trustedClientPassword"); 可以获取到系统中的web模块下的wep-app.pr ...
- BUPT2017 wintertraining(15) #1 题解
拖了一周才完成的题解,抛出一个可爱的表情 (っ'-')╮ =͟͟͞͞❤️.对我来说E.F比较难,都是线段树的题,有点久没写了. A - Infinite Sequence CodeForces - 6 ...
- Spring事务说明与自实现
要使用Springboot的事务其实非常简单,在启动类上添加@EnableTransactionManagement,在Service的类或者方法上使用@Transactional就可以了. 事务本身 ...
- [NOIP提高组2018day2t1]旅行
题目描述 给定n个城市,m条双向道路的图, 不存在两条连接同一对城市的道路,也不存在一条连接一个城市和它本身的道路.并且, 从任意一个城市出发,通过这些道路都可以到达任意一个其他城市.小 Y 只能通过 ...
- Eclipse 插件Maven在使用 add dependency,找不到包,解决办法
通过右键单击pom.xml文件选择maven –> add dependency 或者是打开pom.xml文件,选择dependencies –>add 时,搜索不到依赖的jar包,解决方 ...
- Nginx入门篇
Nginx 是一个高性能的 Web 和反向代理服务器, 它具有有很多非常优越的特性: 作为 Web 服务器:相比 Apache,Nginx 使用更少的资源,支持更多的并发连接,体现更高的效率,这点使 ...
- Luogu 2680 NOIP 2015 运输计划(树链剖分,LCA,树状数组,树的重心,二分,差分)
Luogu 2680 NOIP 2015 运输计划(树链剖分,LCA,树状数组,树的重心,二分,差分) Description L 国有 n 个星球,还有 n-1 条双向航道,每条航道建立在两个星球之 ...