三 、 使用patchadd来管理补丁
patchadd是Solaris传统的命令行管理工具。
1.检查系统已经安装了哪些补丁
在/var/sadm/patch目录下,记录了已安装的补丁。如:
# ls /var/sadm/patch
107558-05 107594-04 107630-01 107663-01 107683-01
建议不要对/var/sadm/patch目录做任何修改,此目录被破坏后将不能安装或删除任何补丁。此外,也可以使用Patchadd -p和showrev -p来查看安装了哪些补丁。使用Patchadd -p选项可以检验已安装的patch,例如:
# patchadd -p
Patch: 106793-01 Obsoletes: Requires: Incompatibles:
Packages: SunWhea
同样,Solaris提供了另一命令来查看已安装的patch:
#showrev -p
Patch: 106793-01 Obsoletes: Requires: Incompatibles:
Packages: SunWhea
2.添加和卸载补丁程序
Solaris提供了两个命令来管理补丁,Patchadd和patchrm。这两个命令是在Solaris 2.6版本开始提供的。Patchadd用来安装解压缩后的补丁程序。Patchadd通过调用pkgadd命令来安装补丁。安装补丁前,我们需要将补丁解压到/var/tmp下安装。安装补丁如下命令:
# cd /var/tmp
# patchadd 112735-21
如果当前目录下有112735-21目录,patchadd将安装此补丁。补丁安装后,系统会备份原文件,以便在以后删除此补丁。
如果使用patchadd -d选项安装补丁,系统将不备份源文件,这意味着你将不能在以后删除此补丁。
如果因为某种情况你想卸载某一补丁,则可以使用Patchrm命令来完成。此命令通过调用pkgadd来恢复安装补丁前的文件备份来卸载补丁。使用Patch-ID作为Patchrm的参数就可以卸载补丁:
# patchrm 106793-01
这里需要说明一下,在如下三种情况下,补丁将不能卸载:
在安装patch时,用patchadd -d命令指定patchadd不备份被更新的文件。这样安装的patch将无法删除。
另一Patch需要此Patch,即存在dependence(关联性),如一定要删掉该patch,可先删掉另一patch。
要删的patch已被另一更新的patch废弃了。如安装110668-04补丁后,以前安装过110668-03,则110668-03将被110668-04废弃,110668-03无法删除。
3.安装Cluster补丁包
Cluster补丁为单个补丁的集合,下载解压后,可以通过执行./install_Cluster脚本来完成补丁集的安装。执行./install_Cluster后,脚本将检查当前目录下的patch_order文件,此文件标明了Patch的安装顺序,./install_Cluster将按照Patch_order文件给出的顺序来安装patch。如果没有patch_order文件,则认为当前目录下所有以1开始的目录名均为需要安装的补丁目录,并且认定这些目录的名称次序作为安装Patch的次序。因此你可以通过修改patch_order文件来决定安装或不安装某Patch。
Solaris服务器补丁管理详解(图)
0
相关文章