cenots7 rpm 包升级ssh
rpm下载地址 也可以自行官网下载
链接: https://pan.baidu.com/s/1S945MehpmZbIriKK6l7Sfw 提取码: y5ua
centos7rpm包升级ssh
逻辑思想
一、定义包的下载地址、定义要下载包的名字
二、定义一个函数
函数内容
第一步:下载包
第二步:验证下载包是否正确
第三步:备份原有ssh文件和pam.d 文件
第四步:创建新的文件夹然后把下载的包加压到此目录
第五步:rpm安装下载的包,并重启
第六步:验证重启是否成功,如果不成功是用whiptail返回,sshd服务重启失败,SSH升级失败。请不要退出root用户并进行检查
第七步:成功后输出SSH升级完成,当前版本请不要退出当前root环境,重启sshd服务后,重新登陆ssh验>证ssh是否正常
三、检查系统版本和登录用户
脚本正文
PKG_SRC=x.x.x.x:/home #下载地址
PKG_NAME=filename # 文件名字
Centos(){
cd /tmp/
wget http://$${PKG_SRC}/${PKG_NAME}
if [[ $? == 0 ]];then
cp -rp /etc/ssh /etc/ssh_`date "+%Y%m%d%H%M%S"` #备份原有文件
cp /etc/pam.d/sshd /etc/pam.d/sshd_`+%Y%m%d%H%M%S"` #备份pam文件
mkdir openssh; tar -xf ${PKG_NAME} -C openssh/ #创建新的文件夹把包解压到此目录
cd openssh
rpm -Uvh openssh-*.rpm
systemctl restart sshd #重启sshd 服务
if [[ $? != 0 ]] ; then whiptail --title "<ERROR>" --msgbox "sshd服务重启失败,SSH升级失败。请不要退出root用户并进行检查。" 10 50 exit ; fi # 使用 whiptail 提示框 宽高 10 ,50
ssh_ver = `ssh -V 2>&1 | grep OpenSSH | awk -F ',' '{print $1}'`
whiptail --title "<NOTICE>" --msbox " sshd 升级完成 当前版本 ${ssh_ver} 不要着急退出 终端界面,重启服务,然后多连接几个伪终端" 10 55
rm -rf /tmp/${PKG_NAME} /tmp/openssh # 删除最初下载的包
else
whiptail --title "<ERROR>" --msgbox "文件下载失败,请重试或者放弃吧愚蠢的人类" 10 55
exit
}
#检查系统用户及系统版本
if [[ `whoami != root`]];then
whiptail --title "<ERROR>" --msgbox "请使用root用户执行";exit
else
if [[ `cat/etc/redhat-release | awk '{print $4}' | awk -F '.' '{print $1}'` -eq 7 ]];then
Centos
else
whiptail -- title "<ERROR>" --msgbox " 目前只支持centos7 环境下的ssh 升级" 10 55
exit
cenots7 rpm 包升级ssh的更多相关文章
- 编译制作Linux 3.18内核rpm包(升级centos6.x虚拟机内核)
介绍 openstack平台需要使用各种Linux发行版模板镜像,其制作方法主要有两种,要么是基于各大Linux发行版ISO光盘手动制作,要么是使用官方提供的模板镜像再做修改 之前制作的opensta ...
- Ceph 客户端的 RPM 包升级问题
问题 最近想把一个现有的 Ceph 客户端升级为最新的 M 版: [root@overcloud-ovscompute-0 ~]# rpm -qa | grep ceph puppet-ceph-2. ...
- fpm打包神奇rpm包升级python2.7.16
fpm打包神器参考文档:https://www.cnblogs.com/flintlovesam/p/6594635.html FPM的安装:安装ruby环境和gem命令: yum -y instal ...
- rpm 包的安装、卸载、升级、查询、验证
关键字: rpm 强制卸载jdk rpm -e j2sdk1.4.2_04 强制覆盖安装jdk rpm -Uvh j2sdk-1_4_1_02-fcs-linux-i586.rpm --force - ...
- [Linux] 021 RPM 包的安装、升级与卸载
1. 包全名与包名包全名 包全名:操作的包是没有安装的软件包 使用包全名.而且要注意路径包名 包名:操作已经安装的软件包时,使用 是搜索 /var/lib/rpm/ 中的数 2. 安装 $ rpm - ...
- 【CentOS】安装RPM包或者源码包
一.rpm (是Redheat Package Manager的简称) 如果光驱中还有系统安装盘的话, 1.先挂载光驱, mount /dev/cdrom /mnt/ 2.cd /mnt/ 3.cd ...
- Linux下RPM包的安装
Linux下RPM包安装 二进制包(RPM包.系统默认包) RPM安装 rpm -ivh 包全名(查询依赖网址:http://www.rpmfind.net) -i(install):安装 -v(ve ...
- RPM包安装——手动安装
RPM包安装 手动安装 挂载光盘 首先查看光盘是否挂载(使用mount命令) RPM包存放位置 在你光盘挂载点的Packages目录下 使用 ll | grep 关键字 可以快速找到你想要的RPM包 ...
- (转) centos7 RPM包之rpm命令
原文:https://blog.csdn.net/capecape/article/details/78529159 RPM包与源码包的区别1.软件包分类 源码包:C源代码包 rpm包:编译之后的二进 ...
- 安装RPM包或者源码包
RPM工具 RPM他是以一种数据库记录的方式将我们所需要的套件安装到linux主机的一套管理程序关于RPM各个选项的含义如下-i:表示安装-v:表示可视化-h:表示安装进度在安装RPM包时,常用的附带 ...
随机推荐
- win32com操作word API精讲 第七集 Range(五)字体格式精讲
本课程<win32com操作word API精讲&项目实战>视频平台以视频为主,本平台以文字为主,公众号ID:一灯编程 本节课主要讲解使用Range操作Font接口中的字体.字号. ...
- java 进阶P-5.5+P-6.1
框架加数据 以框架+数据来提高可扩展性 命令的解析是否可以脱离if-else 定义一个Handler来处理命令 用Hash表来保存命令和Handler之间的关系 抽象 Shape是什么形状 Shape ...
- 【学习笔记】C/C++ 设计模式 - 工厂模式(上)
介绍说明 在年初七的时候,学习了工厂模式,今天在复习的时候发现漏了几个知识点,因此重写这篇文章,以循环渐进的描述方式来对比不同的使用技巧. 工厂设计模式属于 "创建型设计模式",在 ...
- 一小时学会微信小程序
一小时学会微信小程序 目录 一.小程序概要 1.1.发展历史 1.2.小程序的诞生 二.微信小程序介绍 三.开发微信小程序的软件下载与初步配置 3.1.获取微信小程序的AppID 3.2.下载安装微 ...
- drf-day5——反序列化类校验部分源码分析、断言、drf请求、drf响应、视图组件及两个视图基类、基于GenericAPIView+5个视图扩展类
目录 一.反序列化类校验部分源码解析(了解) 二.断言 三.drf之请求 3.1 Request能够解析的前端传入的编码格式 3.2 Request类有哪些属性和方法(学过) 常用参数 Respons ...
- Containers feature is disabled. Enable it using the PowerShell script (in an administrative PowerShe
1.问题如题如下图 2.解决办法 以管理员身份运行Window Terminal(Windows PowerShell),输入图上下方所示命令 Enable-WindowsOptionalFeatur ...
- ft5426触摸屏I2C
触摸的点数, 先写入地址0x38, 寄存器0x02, 再次读取0x38的数据,得到1个触摸点 读取全部坐标信息,需要读入30字节数据
- Abp+Vue iis发布报错 HTTP Error 500.30 - ANCM In-Process Start Failure
1.项目发布到文件系统 2.IIS设置 ABP 如果使用时Net Core 跨平台,它依赖AspNetCoreModuleV2模块(没有的话需要先安装) 下载地址:https://dotnet ...
- element-ui中rules使用正则验证、表单验证
<template> <el-form :model="DataForm" label-position="top" :rules=" ...
- LeetCode-838 推多米诺
来源:力扣(LeetCode)链接:https://leetcode-cn.com/problems/push-dominoes 题目描述 n 张多米诺骨牌排成一行,将每张多米诺骨牌垂直竖立.在开始时 ...