4.1、操作系统打补丁:

1、centos更新说明:

centos 官方没有发布关于centos操作系统的补丁。

centos 操作系统更新可以参考如下建议。

2、更新操作系统软件包,操作系统版本、内核版本:

yum update

等价于

yum upgrade

3、根据需求更新软件包:

# 检查可更新的软件包

yum check-update

# 根据可更新软件包列表,安装自己需要的软件包

yum install <package_name>

4、只更新软件包,不更系统版本和系统内核:

yum --exclude=kernel* --exclude=centos-release* update

4.2、使用patch命令给软件包打补丁,适用于名称相同文件的操作:

1、创建实验环境:

[root@controlnode ~]# mkdir -p /tools/ && cd /tools/

[root@controlnode tools]# mkdir demo/ && cd demo/

[root@controlnode demo]# mkdir -p old/a/b/

[root@controlnode demo]# mkdir -p new/a/b/

[root@controlnode demo]# vim old/a/b/foo.txt

old_line_1

old_line_2

[root@controlnode demo]# vim new/a/b/foo.txt

new_line_1

new_line_2

2、制作补丁:old目录和new目录数据保持一致,把对old目录需要做的操作记录下来:

[root@controlnode demo]# diff -Naur old/ new/ > foo.patch

3、查看补丁文件:

[root@controlnode demo]# cat foo.patch

diff -Naur old/a/b/foo.txt new/a/b/foo.txt

--- old/a/b/foo.txt 2020-08-11 23:03:27.006968726 +0800

+++ new/a/b/foo.txt 2020-08-11 23:03:50.258730620 +0800

@@ -1,2 +1,2 @@

-old_line_1

-old_line_2

+new_line_1

+new_line_2

4、应用补丁:

[root@controlnode demo]# patch -p0 < foo.patch

patching file old/a/b/foo.txt

[root@controlnode demo]# cat old/a/b/foo.txt

new_line_1

new_line_2

等价于

[root@controlnode old]# pwd

/tools/demo/old

[root@controlnode old]# patch -p1 < ../foo.patch

等价于

[root@controlnode a]# pwd

/tools/demo/old/a

[root@controlnode a]# patch -p2 < ../../foo.patch

5、patch 补充:

(1)参数说明:

-pn:p为path的缩写,n指将patch文件里的path第n条'/'及其左边部分取消

-R:卸载patch包

--dry-run:尝试patch软件,并不真正改动软件

(2)如果打过补丁再次使用patch命令,系统会问你是否想还原回去:

1)patch -p0 < foo.patch

patching file old/a/b/foo.txt

Reversed (or previously applied) patch detected! Assume -R? [n] y

2)查看一下目标文件,你会发现内容已经还原成旧的了

# cat old/a/b/foo.txt

old_line_1

old_line_2

3)如果你想严格指定是应用补丁可以使用下面命令(就是增加N参数)

# patch -Np0 < foo.patch

4)如果你想严格指定是还原补丁可以使用下面命令(就是增加R参数)

# patch -Rp0 < foo.patch

为Centos系统打补丁的更多相关文章

  1. CentOS系统-常用组件安装

    1,安装系统后,补装包组yum groupinstall "Compatibility libraries" "Base" "Development ...

  2. centos 系统软件包管理 yum 本地yum配置 扩展源epel rpm 清除yum缓存 yum provides "*/vim" 第十节课

    centos  系统软件包管理  yum 本地yum配置  扩展源epel  rpm  清除yum缓存  yum provides "*/vim"   第十节课 你不能保证可逆化操 ...

  3. CentOS系统MySQL双机热备配置

    1  概述 在集成项目中需要应对不同环境下的安装配置,主流操作系统大致可以分为三种:Linux.Windows以及UNIX.其中Linux备受青睐的主要原因有两个: 首先,Linux作为自由软件有两个 ...

  4. Net分布式系统之二:CentOS系统搭建Nginx负载均衡

    一.关于CentOS系统介绍 CentOS(Community Enterprise Operating System,中文意思是:社区企业操作系统)是Linux发行版之一,它是来自于Red Hat ...

  5. 初涉定制linux系统之——自动化安装Centos系统镜像制作

    最近碰到个需求:要在内网环境安装centos6.5系统并搭建服务,但由于自动部署脚本里安装依赖包使用的是yum安装,而服务器无法连接外网,实施人员也不会本地yum源搭建O__O "….. 本 ...

  6. CentOS系统操作mysql的常用命令

    MySQL名字的来历MySQL是一个小型关系型数据库管理系统,MySQL被广泛地应用在Internet上的中小型网站中.由于其体积小.速度快.总体拥有成本低,尤其是开放源码这一特点,许多中小型网站为了 ...

  7. Linux(centos)系统各个目录的作用详解

    Linux(centos)系统各个目录的作用详解 文件系统的类型 LINUX有四种基本文件系统类型:普通文件.目录文件.连接文件和特殊文件,可用file命令来识别. 普通文件:如文本文件.C语言元代码 ...

  8. 烂泥:【解决】Ubuntu下使用SSH连接centos系统很慢

    本文由秀依林枫提供友情赞助,首发于烂泥行天下. 这几天在Ubuntu下使用SSH连接centos系统,发现连接很慢.建议一个连接大约需要30s.很是坑爹,如下: 后来查询相关资料,发现这个是Ubunt ...

  9. win10系统更新补丁时进度条一直卡在0%不动的解决方案

    为了能够让win10系统更加安全稳定,很多用户都会时不时为自己的电脑安装补丁.不过,部分用户在为win10系统更新补丁时,却会遇到进度条一直卡在0%不动的问题.这该怎么办呢?下面,小编就告诉大家解决该 ...

随机推荐

  1. Python 库整理【收藏】

    库名称简介 Chardet字符编码探测器,可以自动检测文本.网页.xml的编码. colorama主要用来给文本添加各种颜色,并且非常简单易用. Prettytable主要用于在终端或浏览器端构建格式 ...

  2. 053.Python前端Django框架模板层

    模板层 一 模板语法之变量 在 Django 模板中遍历复杂数据结构的关键是句点字符, 语法: {{ var_name }} [root@node10 mysite]# cat app01/urls. ...

  3. 041.Python守护进程,锁信号量和事件

    一 守护进程 1.1 基本概念 守护进程 正常情况下,主进程默认等待子进程调用结束之后结束 守护进程在主进程执行代码结束后,自动终止 守护进程语法: 进程对象.daemon = True ,设置该进程 ...

  4. component: resolve => require(['../pages/home.vue'], resolve)-装载

    import Vue from 'vue'import VueRouter from 'vue-router'// "@"相当于".."import Detai ...

  5. mysql基础之忘掉密码解决办法及恢复root最高权限办法

    如果忘记了mysql的root用户的密码,可以使用如下的方法,重置root密码. 方法一: 1.停止当前mysql进程 systemctl stop mariadb 2.mysql进程停止后,使用如下 ...

  6. TCP/IP、Http的区别--(转自任智康)

    TPC/IP协议是传输层协议,主要解决数据如何在网络中传输,而HTTP是应用层协议,主要解决如何包装数据.关于TCP/IP和HTTP协议的关系,网络有一段比较容易理解的介绍:"我们在传输数据 ...

  7. linux 系统监控命令之 top-(转自 Howie的专栏)

    top命令经常用来监控linux的系统状况,比如cpu.内存的使用,程序员基本都知道这个命令,但比较奇怪的是能用好它的人却很少,例如top监控视图中内存数值的含义就有不少的曲解. 本文通过一个运行中的 ...

  8. EasyUI_使用datagrid分页 (Day_28)

    本次分页涉及技术点 SSM+PageHelper+DatagrId 先来看下效果: 这是无条件分页,下一篇博客我们将讲有条件分页. 无论你是使用js加载table 还是直接使用标签. 使用datagr ...

  9. Java反射机制 之 获取类的 方法 和 属性(包括构造函数)(Day_06)

    把自己立成帆,才能招来凤. 运行环境 JDK8 + IntelliJ IDEA 2018.3  本文中使用的jar包链接 https://files.cnblogs.com/files/papercy ...

  10. Spring 版MediatR--中介者模式实现库

    背景 C# 版本库 MediatR 是一个中介者模式实现类库,其核心是一个中介 者模式的.NET实现,其目的是消息发送和消息处理的解耦.它支持单播和多播形式使用同步或异步的模式来发布消息,创建和帧听事 ...