protectbase
|
你應該在 protectbase 或 priorities 插件中 選其一,但它們不應同時被使用。由於 priorities 與 protectbase 可以做同樣的事情,但擁有多於兩於組別,我們只推薦 protectbase 給最基本的設定。 |
protectbase 的用處就是保護某些軟件庫被其它軟件庫的更新所取替。受保護的軟件庫不會被未受保護的軟件庫內較新的檔案更新。我們推薦這個插件給任何經常啟用第三方軟件庫的人們,因為這些非 CentOS 的軟件庫可能會更新某些系統檔案,有機會導致你的 CentOS 安裝不穩定。
首先,你必須在 /etc/yum.conf 檔案內啟用插件,詳情見「Yum 插件」。由 CentOS 5 起插件已經預設被啟用。
要安裝 protectbase 插件,請確定 CentOS 的 extras 軟件庫已經被啟用(它預設是被啟用的),然後執行這個指令:
yum install yum-plugin-protectbase
在 CentOS 5 上這個套件的名稱被更改了,你可以用這個指令:
yum install yum-protectbase
完成插件的安裝後,請確定它已被啟用。請編輯 /etc/yum/pluginconf.d/protectbase.conf 並確保它擁有下列內容:
[main] enabled = 1
之後,你須要編輯 /etc/yum.repos.d/ 內所有 .repo 檔案,並選擇為每個軟件庫加入:
protect=1
或
protect=0
下面是一個在 CentOS-Base.repo 檔案內只保護 [base] 及 [update] 軟件庫的範例:
[base] name=CentOS-$releasever - Base mirrorlist=http://mirrorlist.centos.org/?release=$releasever&arch=$basearch&repo=os #baseurl=http://mirror.centos.org/centos/$releasever/os/$basearch/ gpgcheck=1 gpgkey=http://mirror.centos.org/centos/RPM-GPG-KEY-centos4 protect=1 #released updates [update] name=CentOS-$releasever - Updates mirrorlist=http://mirrorlist.centos.org/?release=$releasever&arch=$basearch&repo=updates #baseurl=http://mirror.centos.org/centos/$releasever/updates/$basearch/ gpgcheck=1 gpgkey=http://mirror.centos.org/centos/RPM-GPG-KEY-centos4 protect=1 #packages used/produced in the build but not released [addons] name=CentOS-$releasever - Addons mirrorlist=http://mirrorlist.centos.org/?release=$releasever&arch=$basearch&repo=addons #baseurl=http://mirror.centos.org/centos/$releasever/addons/$basearch/ gpgcheck=1 gpgkey=http://mirror.centos.org/centos/RPM-GPG-KEY-centos4 protect=0 #additional packages that may be useful [extras] name=CentOS-$releasever - Extras mirrorlist=http://mirrorlist.centos.org/?release=$releasever&arch=$basearch&repo=extras #baseurl=http://mirror.centos.org/centos/$releasever/extras/$basearch/ gpgcheck=1 gpgkey=http://mirror.centos.org/centos/RPM-GPG-KEY-centos4 protect=0 #additional packages that extend functionality of existing packages [centosplus] name=CentOS-$releasever - Plus mirrorlist=http://mirrorlist.centos.org/?release=$releasever&arch=$basearch&repo=centosplus #baseurl=http://mirror.centos.org/centos/$releasever/centosplus/$basearch/ gpgcheck=1 enabled=0 gpgkey=http://mirror.centos.org/centos/RPM-GPG-KEY-centos4 protect=0 #contrib - packages by Centos Users [contrib] name=CentOS-$releasever - Contrib mirrorlist=http://mirrorlist.centos.org/?release=$releasever&arch=$basearch&repo=contrib #baseurl=http://mirror.centos.org/centos/$releasever/contrib/$basearch/ gpgcheck=1 enabled=0 gpgkey=http://mirror.centos.org/centos/RPM-GPG-KEY-centos4 protect=0
註: 你必須為 /etc/yum.conf 中的 .repo 檔裡每個不想受保護的軟件庫加上 protect=0,否則它們屬於 protect=1 的組別。
當你在完成編輯後進行更新,只有那些擁有 protect=1 的軟件庫才能更新來獲 protect=1 保護的軟件庫的軟件。就我們的範例而言,yum 只會用 [base] 或 [update] 軟件庫內的 RPM 來更新屬於 [base] 或 [update] 的套件。假如 [addons] 軟件庫為來自 [base] 的套件提供了更新,升級亦不會進行。
Translation of revision 38