为Centos系统打补丁
<p><span style="font-family: "微软雅黑"; font-size: 14pt">4.1、操作系统打补丁:</span></p><p style="margin: 0; text-indent: 0; -qt-block-indent: 0"><span style="font-family: "微软雅黑"; font-size: 14pt">1、centos更新说明:</span></p>
<p style="margin: 0; text-indent: 0; -qt-block-indent: 0"><span style="font-family: "微软雅黑"; font-size: 14pt">centos 官方没有发布关于centos操作系统的补丁。</span></p>
<p style="margin: 0; text-indent: 0; -qt-block-indent: 0"><span style="font-family: "微软雅黑"; font-size: 14pt">centos 操作系统更新可以参考如下建议。</span></p>
<p style="margin: 0; text-indent: 0; font-family: "微软雅黑"; font-size: 14pt; -qt-block-indent: 0; -qt-paragraph-type: empty"><br></p>
<p style="margin: 0; text-indent: 0; -qt-block-indent: 0"><span style="font-family: "微软雅黑"; font-size: 14pt">2、更新操作系统软件包,操作系统版本、内核版本:</span></p>
<p style="margin: 0; text-indent: 0; -qt-block-indent: 0"><span style="font-family: "微软雅黑"; font-size: 14pt">yum update</span></p>
<p style="margin: 0; text-indent: 0; -qt-block-indent: 0"><span style="font-family: "微软雅黑"; font-size: 14pt">等价于</span></p>
<p style="margin: 0; text-indent: 0; -qt-block-indent: 0"><span style="font-family: "微软雅黑"; font-size: 14pt">yum upgrade</span></p>
<p style="margin: 0; text-indent: 0; font-family: "微软雅黑"; font-size: 14pt; -qt-block-indent: 0; -qt-paragraph-type: empty"><br></p>
<p style="margin: 0; text-indent: 0; -qt-block-indent: 0"><span style="font-family: "微软雅黑"; font-size: 14pt">3、根据需求更新软件包:</span></p>
<p style="margin: 0; text-indent: 0; -qt-block-indent: 0"><span style="font-family: "微软雅黑"; font-size: 14pt"># 检查可更新的软件包</span></p>
<p style="margin: 0; text-indent: 0; -qt-block-indent: 0"><span style="font-family: "微软雅黑"; font-size: 14pt">yum check-update</span></p>
<p style="margin: 0; text-indent: 0; -qt-block-indent: 0"><span style="font-family: "微软雅黑"; font-size: 14pt"># 根据可更新软件包列表,安装自己需要的软件包</span></p>
<p style="margin: 0; text-indent: 0; -qt-block-indent: 0"><span style="font-family: "微软雅黑"; font-size: 14pt">yum install <package_name></span></p>
<p style="margin: 0; text-indent: 0; font-family: "微软雅黑"; font-size: 14pt; -qt-block-indent: 0; -qt-paragraph-type: empty"><br></p>
<p style="margin: 0; text-indent: 0; -qt-block-indent: 0"><span style="font-family: "微软雅黑"; font-size: 14pt">4、只更新软件包,不更系统版本和系统内核:</span></p>
<p style="margin: 0; text-indent: 0; -qt-block-indent: 0"><span style="font-family: "微软雅黑"; font-size: 14pt">yum --exclude=kernel* --exclude=centos-release* update</span></p>
<p style="margin: 0; text-indent: 0; font-family: "微软雅黑"; font-size: 14pt; -qt-block-indent: 0; -qt-paragraph-type: empty"><br></p>
<p style="margin: 0; text-indent: 0; -qt-block-indent: 0"><span style="font-family: "微软雅黑"; font-size: 14pt">4.2、使用patch命令给软件包打补丁,适用于名称相同文件的操作:</span></p>
<p style="margin: 0; text-indent: 0; -qt-block-indent: 0"><span style="font-family: "微软雅黑"; font-size: 14pt">1、创建实验环境:</span></p>
<p style="margin: 0; text-indent: 0; -qt-block-indent: 0"><span style="font-family: "微软雅黑"; font-size: 14pt"># mkdir -p /tools/ && cd /tools/</span></p>
<p style="margin: 0; text-indent: 0; -qt-block-indent: 0"><span style="font-family: "微软雅黑"; font-size: 14pt"># mkdir demo/ && cd demo/</span></p>
<p style="margin: 0; text-indent: 0; -qt-block-indent: 0"><span style="font-family: "微软雅黑"; font-size: 14pt"># mkdir -p old/a/b/</span></p>
<p style="margin: 0; text-indent: 0; -qt-block-indent: 0"><span style="font-family: "微软雅黑"; font-size: 14pt"># mkdir -p new/a/b/</span></p>
<p style="margin: 0; text-indent: 0; -qt-block-indent: 0"><span style="font-family: "微软雅黑"; font-size: 14pt"># vim old/a/b/foo.txt </span></p>
<p style="margin: 0; text-indent: 0; -qt-block-indent: 0"><span style="font-family: "微软雅黑"; font-size: 14pt">old_line_1</span></p>
<p style="margin: 0; text-indent: 0; -qt-block-indent: 0"><span style="font-family: "微软雅黑"; font-size: 14pt">old_line_2</span></p>
<p style="margin: 0; text-indent: 0; -qt-block-indent: 0"><span style="font-family: "微软雅黑"; font-size: 14pt"># vim new/a/b/foo.txt </span></p>
<p style="margin: 0; text-indent: 0; -qt-block-indent: 0"><span style="font-family: "微软雅黑"; font-size: 14pt">new_line_1</span></p>
<p style="margin: 0; text-indent: 0; -qt-block-indent: 0"><span style="font-family: "微软雅黑"; font-size: 14pt">new_line_2</span></p>
<p style="margin: 0; text-indent: 0; font-family: "微软雅黑"; font-size: 14pt; -qt-block-indent: 0; -qt-paragraph-type: empty"><br></p>
<p style="margin: 0; text-indent: 0; -qt-block-indent: 0"><span style="font-family: "微软雅黑"; font-size: 14pt">2、制作补丁:old目录和new目录数据保持一致,把对old目录需要做的操作记录下来:</span></p>
<p style="margin: 0; text-indent: 0; -qt-block-indent: 0"><span style="font-family: "微软雅黑"; font-size: 14pt"># diff -Naur old/ new/ > foo.patch</span></p>
<p style="margin: 0; text-indent: 0; font-family: "微软雅黑"; font-size: 14pt; -qt-block-indent: 0; -qt-paragraph-type: empty"><br></p>
<p style="margin: 0; text-indent: 0; -qt-block-indent: 0"><span style="font-family: "微软雅黑"; font-size: 14pt">3、查看补丁文件:</span></p>
<p style="margin: 0; text-indent: 0; -qt-block-indent: 0"><span style="font-family: "微软雅黑"; font-size: 14pt"># cat foo.patch</span></p>
<p style="margin: 0; text-indent: 0; -qt-block-indent: 0"><span style="font-family: "微软雅黑"; font-size: 14pt">diff -Naur old/a/b/foo.txt new/a/b/foo.txt</span></p>
<p style="margin: 0; text-indent: 0; -qt-block-indent: 0"><span style="font-family: "微软雅黑"; font-size: 14pt">--- old/a/b/foo.txt 2020-08-11 23:03:27.006968726 +0800</span></p>
<p style="margin: 0; text-indent: 0; -qt-block-indent: 0"><span style="font-family: "微软雅黑"; font-size: 14pt">+++ new/a/b/foo.txt 2020-08-11 23:03:50.258730620 +0800</span></p>
<p style="margin: 0; text-indent: 0; -qt-block-indent: 0"><span style="font-family: "微软雅黑"; font-size: 14pt">@@ -1,2 +1,2 @@</span></p>
<p style="margin: 0; text-indent: 0; -qt-block-indent: 0"><span style="font-family: "微软雅黑"; font-size: 14pt">-old_line_1</span></p>
<p style="margin: 0; text-indent: 0; -qt-block-indent: 0"><span style="font-family: "微软雅黑"; font-size: 14pt">-old_line_2</span></p>
<p style="margin: 0; text-indent: 0; -qt-block-indent: 0"><span style="font-family: "微软雅黑"; font-size: 14pt">+new_line_1</span></p>
<p style="margin: 0; text-indent: 0; -qt-block-indent: 0"><span style="font-family: "微软雅黑"; font-size: 14pt">+new_line_2</span></p>
<p style="margin: 0; text-indent: 0; font-family: "微软雅黑"; font-size: 14pt; -qt-block-indent: 0; -qt-paragraph-type: empty"><br></p>
<p style="margin: 0; text-indent: 0; -qt-block-indent: 0"><span style="font-family: "微软雅黑"; font-size: 14pt">4、应用补丁:</span></p>
<p style="margin: 0; text-indent: 0; -qt-block-indent: 0"><span style="font-family: "微软雅黑"; font-size: 14pt"># patch -p0 < foo.patch</span></p>
<p style="margin: 0; text-indent: 0; -qt-block-indent: 0"><span style="font-family: "微软雅黑"; font-size: 14pt">patching file old/a/b/foo.txt</span></p>
<p style="margin: 0; text-indent: 0; -qt-block-indent: 0"><span style="font-family: "微软雅黑"; font-size: 14pt"># cat old/a/b/foo.txt</span></p>
<p style="margin: 0; text-indent: 0; -qt-block-indent: 0"><span style="font-family: "微软雅黑"; font-size: 14pt">new_line_1</span></p>
<p style="margin: 0; text-indent: 0; -qt-block-indent: 0"><span style="font-family: "微软雅黑"; font-size: 14pt">new_line_2</span></p>
<p style="margin: 0; text-indent: 0; -qt-block-indent: 0"><span style="font-family: "微软雅黑"; font-size: 14pt">等价于</span></p>
<p style="margin: 0; text-indent: 0; -qt-block-indent: 0"><span style="font-family: "微软雅黑"; font-size: 14pt"># pwd</span></p>
<p style="margin: 0; text-indent: 0; -qt-block-indent: 0"><span style="font-family: "微软雅黑"; font-size: 14pt">/tools/demo/old</span></p>
<p style="margin: 0; text-indent: 0; -qt-block-indent: 0"><span style="font-family: "微软雅黑"; font-size: 14pt"># patch -p1 < ../foo.patch</span></p>
<p style="margin: 0; text-indent: 0; -qt-block-indent: 0"><span style="font-family: "微软雅黑"; font-size: 14pt">等价于</span></p>
<p style="margin: 0; text-indent: 0; -qt-block-indent: 0"><span style="font-family: "微软雅黑"; font-size: 14pt"># pwd</span></p>
<p style="margin: 0; text-indent: 0; -qt-block-indent: 0"><span style="font-family: "微软雅黑"; font-size: 14pt">/tools/demo/old/a</span></p>
<p style="margin: 0; text-indent: 0; -qt-block-indent: 0"><span style="font-family: "微软雅黑"; font-size: 14pt"># patch -p2 < ../../foo.patch</span></p>
<p style="margin: 0; text-indent: 0; font-family: "微软雅黑"; font-size: 14pt; -qt-block-indent: 0; -qt-paragraph-type: empty"><br></p>
<p style="margin: 0; text-indent: 0; -qt-block-indent: 0"><span style="font-family: "微软雅黑"; font-size: 14pt">5、patch 补充:</span></p>
<p style="margin: 0; text-indent: 0; -qt-block-indent: 0"><span style="font-family: "微软雅黑"; font-size: 14pt">(1)参数说明:</span></p>
<p style="margin: 0; text-indent: 0; -qt-block-indent: 0"><span style="font-family: "微软雅黑"; font-size: 14pt">-pn:p为path的缩写,n指将patch文件里的path第n条'/'及其左边部分取消</span></p>
<p style="margin: 0; text-indent: 0; -qt-block-indent: 0"><span style="font-family: "微软雅黑"; font-size: 14pt">-R:卸载patch包</span></p>
<p style="margin: 0; text-indent: 0; -qt-block-indent: 0"><span style="font-family: "微软雅黑"; font-size: 14pt">--dry-run:尝试patch软件,并不真正改动软件</span></p>
<p style="margin: 0; text-indent: 0; font-family: "微软雅黑"; font-size: 14pt; -qt-block-indent: 0; -qt-paragraph-type: empty"><br></p>
<p style="margin: 0; text-indent: 0; -qt-block-indent: 0"><span style="font-family: "微软雅黑"; font-size: 14pt">(2)如果打过补丁再次使用patch命令,系统会问你是否想还原回去:</span></p>
<p style="margin: 0; text-indent: 0; -qt-block-indent: 0"><span style="font-family: "微软雅黑"; font-size: 14pt">1)patch -p0 < foo.patch</span></p>
<p style="margin: 0; text-indent: 0; -qt-block-indent: 0"><span style="font-family: "微软雅黑"; font-size: 14pt">patching file old/a/b/foo.txt</span></p>
<p style="margin: 0; text-indent: 0; -qt-block-indent: 0"><span style="font-family: "微软雅黑"; font-size: 14pt">Reversed (or previously applied) patch detected! Assume -R? y</span></p>
<p style="margin: 0; text-indent: 0; -qt-block-indent: 0"><span style="font-family: "微软雅黑"; font-size: 14pt">2)查看一下目标文件,你会发现内容已经还原成旧的了</span></p>
<p style="margin: 0; text-indent: 0; -qt-block-indent: 0"><span style="font-family: "微软雅黑"; font-size: 14pt"># cat old/a/b/foo.txt</span></p>
<p style="margin: 0; text-indent: 0; -qt-block-indent: 0"><span style="font-family: "微软雅黑"; font-size: 14pt">old_line_1</span></p>
<p style="margin: 0; text-indent: 0; -qt-block-indent: 0"><span style="font-family: "微软雅黑"; font-size: 14pt">old_line_2</span></p>
<p style="margin: 0; text-indent: 0; -qt-block-indent: 0"><span style="font-family: "微软雅黑"; font-size: 14pt">3)如果你想严格指定是应用补丁可以使用下面命令(就是增加N参数)</span></p>
<p style="margin: 0; text-indent: 0; -qt-block-indent: 0"><span style="font-family: "微软雅黑"; font-size: 14pt"># patch -Np0 < foo.patch</span></p>
<p style="margin: 0; text-indent: 0; -qt-block-indent: 0"><span style="font-family: "微软雅黑"; font-size: 14pt">4)如果你想严格指定是还原补丁可以使用下面命令(就是增加R参数)</span></p>
<p style="margin: 0; text-indent: 0; -qt-block-indent: 0"><span style="font-family: "微软雅黑"; font-size: 14pt"># patch -Rp0 < foo.patch</span></p>
<p style="margin: 0; text-indent: 0; font-family: "微软雅黑"; font-size: 14pt; -qt-block-indent: 0; -qt-paragraph-type: empty"><br></p>
<p style="margin: 0; text-indent: 0; font-family: "微软雅黑"; font-size: 14pt; -qt-block-indent: 0; -qt-paragraph-type: empty"><br></p>
<p style="margin: 0; text-indent: 0; font-family: "微软雅黑"; font-size: 14pt; -qt-block-indent: 0; -qt-paragraph-type: empty"><br></p>
<p style="margin: 0; text-indent: 0; font-family: "微软雅黑"; font-size: 14pt; -qt-block-indent: 0; -qt-paragraph-type: empty"><br></p>
<p style="margin: 0; text-indent: 0; font-family: "微软雅黑"; font-size: 14pt; -qt-block-indent: 0; -qt-paragraph-type: empty"><br></p>
<p style="margin: 0; text-indent: 0; font-family: "微软雅黑"; font-size: 14pt; -qt-block-indent: 0; -qt-paragraph-type: empty"><br></p>
<p style="margin: 0; text-indent: 0; font-family: "微软雅黑"; font-size: 14pt; -qt-block-indent: 0; -qt-paragraph-type: empty"><br></p>
<p style="margin: 0; text-indent: 0; font-family: "微软雅黑"; font-size: 14pt; -qt-block-indent: 0; -qt-paragraph-type: empty"><br></p>
<p style="margin: 0; text-indent: 0; font-family: "微软雅黑"; font-size: 14pt; -qt-block-indent: 0; -qt-paragraph-type: empty"></p><br><br>
来源:https://www.cnblogs.com/LiuChang-blog/p/14704205.html
頁:
[1]