狼愛上貍

          我胡漢三又回來了

          給solaris打補丁

          出處:http://www.xxlinux.com/linux/article/unix/rumen/2006-06-25/2117.html

          一、solaris補丁介紹?

          1.1補丁的種類及文件名?
          ????solaris的補丁分為兩類,一類是Point補丁,另一類是Cluster補丁。?

          a)Point補丁程序:?
          ? ?????這類補丁僅僅是針對某一問題或缺陷而發(fā)布的單個補丁程序,solaris7、 solaris8、solairs9的Patch一般為*.zip文件solaris2.6一般為.tar.Z或.tar.gz文件,它有如下編號方式:
          patch?base?code-revision?num??(如110668-04)
          前面部分是這個補丁的主版本號(base?code),后面部分是此補丁的修訂號。兩者合起來構(gòu)成此補丁的Patch-ID。如上例編號為110668- 04的補丁,110668為主版本號,04是修訂號。此補丁是在110668-03的基礎(chǔ)上做了新的修復(fù)。有一點需要指出,補丁版本號為110668的一系列補丁都是針對?/usr/sbin/in.telnetd?這一文件的不同問題的修復(fù),110668-04發(fā)布以后,sun將不再提供110668- 04以前的補丁,如110668-03等。?

          b)?Cluster補丁程序:??
          ????cluster補丁僅僅是一系列point補丁的重新包裝,并帶有自動安裝程序。Cluster補丁的命名方式如下:
          version_Recommended?
          如:9_x86_Recommended.zip是針對Solaris?9?for?X86的補丁集。?
          ????8_Recommended.zip是針對Solaris?8?for?Sparc?的補丁集。?
          ????每個Cluster補丁都對應(yīng)一個CLUSTER_README文件,詳細描述了該Cluster包含的補丁,以及安裝的方法或注意事項。?

          1.2?關(guān)于補丁的其他信息?
          ? ???sun公司對每一版本的solaris都維護了一份Patch?Reports,該 Patch?Reports包含了對應(yīng)版本solaris所有補丁的描述。Patch?Reports每月更新兩次,可以從如下地址得到:?
          http://sunsolve.sun.com/pub-cgi/show.pl?target=patches/patch-access&nav=patchpage?

          ???? 另外sun還維護了一份Sun?Alert?Patch?Report,該文檔按產(chǎn)品分類,并且隨時更新。從這里可以找到所有sun產(chǎn)品的更新文檔及相應(yīng)補丁,當然也包括的solaris的Sun?Alert?文檔、Patch?ID、簡要說明等。Sun?Alert?Patch?Report從這里可以得到:?
          http://sunsolve.sun.com/pub-cgi/show.pl?target=sunalert_patches?
          相應(yīng)的solaris部分可從如下鏈接得到:?
          http://sunsolve.sun.com/pub-cgi/show.pl?target=sunalert_patches#Solaris?
          表格按時間排序,從Category表格中可以知道此問題屬于安全缺陷修復(fù)還是應(yīng)用優(yōu)化。?

          二、補丁的下載?
          ????Cluster補丁可以從如下網(wǎng)址下載:
          http://sunsolve.sun.com/pub-cgi/show.pl?target=patches/patch-access&nav=patchpage?
          同樣可以使用FTP協(xié)議下載,在sunsolve.sun.com的/pacthroot/clusters可以找到所有的Cluster補丁。下載后為一個*_Recommended.zip文件。該壓縮文件包含一份CLUSTER_README文件,建議安裝前閱讀此文件。?
          ????Point 補丁由于其分散性不易下載與管理,可以使用Sun?Alert?Patch?Report或Patch?Reports來查看補丁情況,這兩份文檔相應(yīng)的 Patch?ID及對應(yīng)下載地址。另外sun網(wǎng)站提供的Patch?Finder?功能也可以使我們在知道Patch?ID的情況下很方便的找到該補丁,連接如下:?
          http://sunsolve.sun.com/pub-cgi/show.pl?target=patches/patch-access&nav=patchpage?
          同樣,利用ftp協(xié)議從sunsolve.sun.com的/patchroot/all_unsigned目錄下也可以下載指定Patch。?
          ????Sun公司建議所有下載的補丁都放到/var/tmp目錄下(這也是通常的做法),如此將不會導(dǎo)致補丁安裝時出現(xiàn)的任何permission/ownership的問題。

          三、solaris補丁的安裝和刪除?

          3.1?/var/sadm/patch目錄?
          ????在/var/sadm/patch目錄下,記錄了已安裝的補丁。?
          ????如:?#?ls?/var/sadm/patch??
          ????107558-05?107594-04?107630-01?107663-01?107683-01??
          ????107696-01?107817-01?107582-01?107612-06?107640-03?
          ????建議不要對此目錄做任何修改,此目錄被破壞后將不能安裝或刪除任何補丁。?

          3.2?管理solaris補丁?
          ????Solaris 提供了兩個命令來管理補丁,patchadd和patchrm。這兩個命令是在Solaris?2.6版本開始提供的,在2.6以前的版本中,每個補丁包中都提供了一個installpatch?程序和一個backoutpatch?程序來完成補丁的安裝和卸載。
          ????patchadd用來安裝解壓縮后的補丁程序。patchadd通過調(diào)用pkgadd?命令來安裝補丁。安裝補丁前,我們需要將補丁解壓到/var/tmp下安裝。安裝補丁如下命令:?
          ????#?cd?/var/tmp?
          ????#?patchadd?110668-04?
          ????Checking?installed?patches...?
          ????Verifying?sufficient?filesystem?capacity?(dry?run?method)?
          ????Installing?patch?packages...?
          ?????
          ???? 如果當前目錄下有110668-04目錄,patchadd將安裝此補丁。補丁安裝后,系統(tǒng)會備份原文件,以便在以后刪除此補丁。如果使用 patchadd?-d?選項安裝補丁,系統(tǒng)將不備份源文件,這意味著你將不能在以后刪除此補丁。使用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?
          ????.?.?.?
          ? ???patchrm?如果因為某種情況你想卸載某一補丁,你可以使用patchrm命令來完成。此命令通過調(diào)用?pkgadd來恢復(fù)安裝補丁前的文件備份來卸載補丁。使用Patch-ID作為patchrm的參數(shù)就可以卸載補?。?
          ????#?patchrm?106793-01?
          ????Checking?installed?packages?and?patches...?
          ????Backing?out?patch?106793-01...?
          ????Patch?106793-01?has?been?backed?out.?
          ????這里需要說明一下,在如下三種情況下,補丁將不能卸載:?
          ????1).在安裝patch時,用patchadd?-d命令指定patchadd不備份被更新的文件。這樣安裝的patch無法刪除。?
          ????2).另一patch需要此patch,即存在dependence(關(guān)聯(lián)性),?如一定要刪掉該patch,先刪掉另一patch。?
          ? ???3).要刪的patch已被另一更新的patch廢棄了。如安裝110668-04補丁后,如果以前安裝過 110668-03,則110668-03將被110668-04廢棄,110668-03將無法刪除。?

          3.3?Cluster補丁的安裝?
          ????Cluster 補丁為單個補丁的集合,下載解壓后,可以通過執(zhí)行./install_Cluster腳本來完成補丁集的安裝。執(zhí)行./install_Cluster 后,腳本將檢查當前目錄下的patch_order文件,此文件標明了Patch的安裝順序,./install_Cluster將按照 patch_order文件給出的順序來安裝patch。如果沒有patch_order文件,則假定當前目錄下所有以1開始的目錄名均為需要安裝的補丁目錄,并且假定這些目錄的名稱次序作為安裝Patch的次序。因此你可以通過修改patch_order文件來決定安裝或不安裝某Patch。?

          3.4?安裝Patch時的注意事項?
          ? ???由于在安裝Patch時需要更新文件,故此Solaris官方推薦在安裝補丁時進入單用戶模式安裝。在某些重要服務(wù)器上可能帶來不便,因此你完全可以在多用戶模式下通過停止相關(guān)服務(wù)進程來完成Patch的安裝。?
          ????Sun 推出的Patch并不是每個都一定要安裝的,因此需要在安裝patch前仔細閱讀README來確定是否需要安裝此補丁。另外,某些補丁具有依賴性,需要先安裝另一補丁才能完成此補丁的安裝,這些都會在README中標明。總之,安裝補丁之前強烈建議你閱讀相應(yīng)的README(每個Patch都提供單獨的 README文件)。?

          3.5?安裝PATCH過程中出現(xiàn)的問題?
          ????在安裝補丁的過程中,經(jīng)常出現(xiàn)一些錯誤提示。例如:?
          ????Installation?of?123456-11?failed.?Return?code?2?
          ???? 通過Return?code我們可以知道錯誤類型。需要注意的是,Return?code?2說明此補丁已被安裝,Return?code?8說明此補丁要修復(fù)的軟件沒有被系統(tǒng)安裝。因此,2和8是完全可以被忽略的錯誤提示。下表說明了各個Return?code對應(yīng)的錯誤類型。?
          Exit?code?Meaning??
          0?No?error??
          1?Usage?error??
          2?Attempt?to?apply?a?patch?that's?already?been?applied??
          3?Effective?UID?is?not?root??
          4?Attempt?to?save?original?files?failed??
          5?pkgadd?failed??
          6?Patch?is?obsoleted??
          7?Invalid?package?directory??
          8?Attempting?to?patch?a?package?that?is?not?installed??
          9?Cannot?access?/usr/sbin/pkgadd?(client?problem)??
          10?Package?validation?errors??
          11?Error?adding?patch?to?root?template??
          12?Patch?script?terminated?due?to?signal??
          13?Symbolic?link?included?in?patch??
          14?NOT?USED??
          15?The?prepatch?script?had?a?return?code?other?than?0.??
          16?The?postpatch?script?had?a?return?code?other?than?0.

          posted on 2006-11-05 17:13 狼愛上貍 閱讀(402) 評論(0)  編輯  收藏 所屬分類: SOLARIS

          主站蜘蛛池模板: 鄯善县| 禄劝| 郑州市| 广河县| 南岸区| 黄冈市| 岫岩| 涡阳县| 玉树县| 旬阳县| 宿迁市| 桂平市| 香格里拉县| 柘城县| 蕲春县| 沙坪坝区| 仁布县| 读书| 临汾市| 饶阳县| 甘肃省| 阿合奇县| 华宁县| 淮北市| 肥东县| 呼图壁县| 龙门县| 庆云县| 车致| 简阳市| 肥西县| 庆城县| 南丰县| 宜宾县| 桐柏县| 呈贡县| 拉萨市| 汽车| 红桥区| 常熟市| 太和县|