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包时,常用的附带 ...
随机推荐
- 第 1 天|基于 AI 进行游戏开发:5 天创建一个农场游戏!
欢迎使用 AI 进行游戏开发! 在本系列中,我们将使用各种 AI 工具,在 5 天内创建一个功能完备的农场游戏.到本系列结束时,你将了解到如何将多种 AI 工具整合到游戏开发流程中.本系列文章将向你展 ...
- Git【初次提交内容(代码)到新创建的远端仓库】
哈喽大家好,转眼到了年后了.年都过完了,就要开始工作了啊.那今天给大家带来的是(题目).因为从实习期开始,就一直用SVN,即使是使用Git的时候,也用了Sourcetree工具.直到最近打算和朋友(兮 ...
- elk引入redis
1.引入日志依赖 <dependency> <groupId>com.cwbase</groupId> <artifactId>logback-redi ...
- CentOS7 登录到控制台后无法联网
登录到控制台, ping 不通网络 解决方法 通过命令找到网卡的配置文件见 ll /etc/sysconfig/network-scripts/ | grep ifcfg-en 编辑配置文件 vi i ...
- Linux 安装 CentOS7
1.linux 下载 http://mirrors.aliyun.com/centos/7/isos/x86_64/ centos-7-isos-x86_64安装包下载_开源镜像站-阿里云 (aliy ...
- 5.安装&卸载子应用 投票
另起一个新的Django项目 djangoProject_poll_test ........ 把.tar.gz包下载到某个路径 D:\此电脑下分类\桌面\django-polls\dist\djan ...
- Windows家庭版安装本地组策略编辑器【gpedit.msc】
由于我们买的电脑一般默认安装的Windows家庭版本 家庭版本默认不带有本地组策略编辑器 当我们运行gpedit.msc的时候会提示 Winodws找不到文件'gpedit.msc'.请确定文件名是否 ...
- Cesium用wsad进行场景漫游(九)
2023-01-14 先看效果,wsadqe控制方向升降,鼠标拖动屏幕也可以控制方向 整理下思路: 1. 使用movement变量控制是否进行漫游 2.1 进行漫游则先将enableRotate等全部 ...
- ASP.NET Core - 依赖注入(二)
.NET Core 依赖注入的基本用法 话接上篇,这一章介绍 .NET Core 框架自带的轻量级 Ioc 容器下服务使用的一些知识点,大家可以先看看上一篇文章 [ASP.NET Core - 依赖注 ...
- 2014-12-2 Z字形扫描
问题描述 试题编号: 201412-2 试题名称: Z字形扫描 时间限制: 2.0s 内存限制: 256.0MB 问题描述: 问题描述 在图像编码的算法中,需要将一个给定的方形矩阵进行Z字形扫描(Zi ...