Red Hat Training
A Red Hat training course is available for Red Hat Satellite
頻道管理指南
Red Hat 網路衛星伺服器 5.4
Red Hat 網路衛星伺服器
版 1
摘要
歡迎使用 Red Hat Network Satellite 頻道管理指南。
章 1. 簡介
本文件將討論關於 RHN Proxy Server 與 RHN Satellite Server 佈署與維護自訂軟體頻道的問題,用於 RHN Satellite Server 或 RHN Proxy Server 安裝、設定之後。
在一些情形下,本文件指的動作是在 Red Hat Network 網站伺服器下進行。對 RHN Proxy Server 用戶來說,這指得是中央 Red Hat Network 伺服器,網址為 https://rhn.redhat.com。對衛星伺服器的用戶來說,這指得是您網站上的 RHN Satellite Server。
章 2. RHN 頻道簡介
Red Hat Network 頻道是軟體套件的集合。頻道能幫助您根據一些標準,分類套件:例如一個頻道可能會包括特定 Red Hat 版本的套件。頻道可以包含一個應用程式的套件,或是一組應用程式的套件。使用者也可以視需求定義頻道;舉例來說,公司可以為所有筆記型電腦,建立包含所需套件的頻道。
2.1. 基礎頻道與子頻道
頻道有兩種:基礎頻道與子頻道。基礎頻道包括了特定架構與 Red Hat Enterprise Linux 版本的套件。子頻道則是與基礎頻道相關聯的頻道,其中包括了額外的套件。
一台系統必須、也只能訂閱一個基礎頻道。一台系統可以訂閱其基礎頻道下的多個子頻道。已經訂閱成功的系統可以透過其 Red Hat Network 頻道,安裝或升級套件。
當系統向 Red Hat Network 註冊時,它會根據系統的 Red Hat Enterprise Linux 版本,訂閱一個基礎頻道。一旦系統註冊過後,其預設的基礎頻道可以透過 RHN 網站,以單台系統為基礎,變為私有的基礎頻道。另一種方式,您可以讓啟動金鑰與一個自訂頻道相關聯,用這啟動金鑰註冊的系統會自動與這自訂頻道相關聯。
在 Red Hat Network 網站上,「頻道」網頁(位於上方導覽列「頻道」分頁下方)提供了所有基礎頻道與其子頻道的清單。請點選顯示在「頻道的詳細資料」網頁中的頻道名稱,此網頁提供了頻道中所有套件、勘誤、與任何相關系統的清單。
2.2. 訂閱頻道
請以以下方式,為系統訂閱頻道:
- 透過啟動金鑰註冊 — 鑑於啟動金鑰的簡易性與速度,不管對 RHN Proxy Server 或 RHN Satellite Server 的用戶端來說,這是註冊系統的最佳方式。使用啟動金鑰註冊的系統會訂閱與該金鑰相關的所有頻道。欲知啟動金鑰的更多詳情,請參閱《Red Hat Network Client Configuration Guide》與《Red Hat Network Reference Guide》。
- 安裝註冊 — 當系統透過 Red Hat Update Agent 或 Red Hat Network Registration Client 註冊時,它會根據系統的 Red Hat Enterprise Linux 版本,自動指定基礎頻道。一旦系統註冊後,其預設的基礎頻道就可以透過 RHN 網站,依照單系統的基礎,改為私有頻道。此外,您也可以將啟動金鑰與自訂頻道相關聯,如此一來,使用這金鑰啟動的系統就會自動與這自訂頻道相關聯。欲知使用這些應用程式的資訊,請根據您的權利等級(Management 或 Provisioning),參閱《RHN 參考指南》。
- 網站訂閱 — 多種特定的子頻道可供訂閱,端視系統的基礎頻道為何。系統可以透過 RHN 網站訂閱子頻道。如果您已經建立了自己的基礎頻道,您也可以透過網站,重新指定系統訂閱這些自訂頻道。欲知更多關於線上訂閱頻道的訊息,請參閱《RHN 參考指南‧Red Hat Network 網站》章節。
2.3. 頻道的可用性
Red Hat Network 上有許多頻道。有些開放給所有使用者,有些開放給特定組織的使用者,有些僅開放給付費使用者。頻道可以分為以下幾類:
- 付費服務頻道 — 這些頻道僅供付費用戶使用,付費方式包括直接購買,或與特定 Red Hat 方案相結合。Red Hat Enterprise Linux 就是付費服務頻道的一個例子。
- 自訂頻道 — 您可以建立這種頻道,以管理自訂套件。這些頻道也被稱為私有頻道,只會建立這些頻道的組織看得到這些頻道;其他人無法存取。
本文件著重在使用 RHN Proxy Server 或 RHN Satellite Server 建立、維護自訂頻道的過程。
2.4. 工具、儲存地、與實務
在建立與管理頻道前,請注意多種工具與儲存地的分別。如果您同時使用了 RHN Satellite Server 與 RHN Proxy Server,這一點更形重要,因為這種配置可用的工具程式與儲存地都會變多。除此之外,Proxy-Satellite 的結合提供了一些最佳方案,擁有最好的效能。
首先,請熟悉這些套件管理工具:
- RHN Package Manager - 請用這工具,將自訂套件推送到您 RHN Proxy Server 上的自訂頻道。
- RHN Push - 請用這工具,將自訂套件推送到您 RHN Satellite Server 的自訂頻道。
- RHN Satellite Synchronization Tool - 請用這工具,從 Red Hat Network 匯入標準套件,並使您的 RHN Satellite Server 與 Red Hat Network 同步。這可以透過網際網路或光碟機來完成。
這些工具各個都有相應的套件儲存地。RHN Package Manager 與 RHN Push 兩者都需要建立暫時性的分段目錄以便存放上載至 Proxy 或 Satellite 的自訂套件。使用過後,您需要將這些分段目錄刪除掉。
注意
Red Hat 建議您將自訂套件備份於 Red Hat Network 之外。
如果您同時使用 RHN Proxy Server 與 RHN Satellite Server,請只用 RHN Push 與 RHN Satellite Synchronization Tool。這種 Proxy-Satellite 的結合需要自訂套件與頻道「只」上傳到 Satellite,Proxy 會從那兒取得套件,並散佈到用戶端系統上面去。
章 3. 建立自訂套件
在建立軟體頻道時,可能會發生許多錯誤。這在套件必須透過 Red Hat Network 發送並安裝時,特別容易發生。本章將提供如何建立套件,並透過 Red Hat Network 成功發送的簡介。本章包括的內容有為何要使用 RPM、如何為 RHN 建立套件、以及如何適當地簽署套件。
3.1. 為 Red Hat Network 建立套件
Red Hat Network 使用 RPM 套件管理員(RPM)技術,來決定新增的軟體與更新檔要如何套用到用戶端電腦上。從 Red Hat Network 取得的套件通常是 RPM 格式。不過完整的 ISO 映像檔亦可透過 Red Hat Network 網站的「軟體」分頁取得,但不適用於 RHN Satellite Server。如果您的 Satellite 支援 Solaris,您可以使用 RHN Push 來上傳 Solaris 套件,到 Solaris 用戶所使用的自訂頻道。
RPM 這工具為使用者提供簡易的方法,安裝、解除安裝、升級、並驗證軟體套件。它也能讓軟體設計師將原始碼與編譯過的版本包裝起來,給終端使用者與設計師使用。
3.1.1. RPM 的優點
RPM 包含了以下優點:
- 易於升級
- 使用 RPM,您就可以升級系統中的獨立元件,而不需要重新安裝。當 Red Hat 釋出 Red Hat Enterprise Linux 的新版本時,使用者不需要為了升級而重裝。RPM 允許智慧型、完全自動、立即可用的系統升級。套件中的設定檔在升級中會被保留,使用者不會失去之前自訂的功能。升級時不需要特別的設定檔,因為安裝與更新套件時,用的 RPM 檔案是一樣的。
- 套件查詢
- RPM 提供的查詢選項能讓您透過整個 RPM 資料庫,搜尋所有可用套件,或是特定檔案。您也可以輕易地找出某個檔案屬於哪個套件、從何而來。包括在套件中的檔案都是以壓縮格式儲存,自訂的二進位表頭包含了有用的套件資訊及其內容。RPM 會快速、輕易地查詢這表頭。
- 系統驗證
- 另一個功能是驗證套件。如果您擔心與某個套件相關的檔案已經被刪除,您可以驗證該套件,檢查其提供的檔案之狀態。這驗證會告知您任何異常。如果錯誤發生,您可以輕易地重新安裝這些檔案。修改的設定檔在重新安裝過程中,都會被保留。
- 純淨的原始碼
- RPM 的重要設計目標之一,是使用純淨的軟體原始碼,讓原始碼從作者手上流出後都能保持如一。有了 RPM,純淨的原始碼就可以包裝起來,包含任何使用的升級檔,外加完整的建立指示。這是非常重要的優勢,理由非常多。舉例來說,如果一個軟體釋出了新版本,您不需要從頭開始編譯。您可以看看更新部份,決定您「可能」需要作什麼。所有對這軟體作的編譯預設值與變更,藉由這技術都非常的一目瞭然。讓原始碼保持純淨似乎只對程式設計師很重要,但這對使用軟體的使用者一樣重要。
3.1.2. RHN RPM 方針
RPM 的優勢在於其正確定義相依性與衝突的能力。Red Hat Network 依靠 RPM 的這項功能運作。Red Hat Network 提供了一個自動的環境,表示在安裝套件過程中,使用者不需手動干預。因此,在建立透過 Red Hat Network 發送的 RPM 時,請遵循下列規則:
- 學習 RPM。對 RPM 的重要功能有著基本的了解,是非常重要的,這可以讓您適當的建立套件。欲知更多 RPM 的詳情,請從以下資源著手:
- 當您要為子頻道建立 RPM 時,請在剛安裝好 Red Hat Enterprise Linux 的系統上建立,這系統的版本應與子基礎頻道的相同。請確定先從 Red Hat Network 取得、安裝所有升級。
- RPM 套件必須在不使用
--force
或--nodeps
選項下安裝。如果您無法在您要建立 RPM 的系統上,以乾淨的方式安裝 RPM,Red Hat Network 就無法在一台系統上自動安裝。 - RPM 套件的檔名必須是 NVR 格式(名稱、版本、釋出版本),同時必須包含套件的架構。適當的格式是
name-version-release.arch.rpm
。舉例來說,合格的 RPM 套件檔名是pkgname-0.84-1.i386.rpm
,其中名稱是 pkgname,版本是 0.84,釋出版本為 1,架構為 i386。 - RPM 套件應該由套件的維護者來簽署。未簽署的套件還是可透過 Red Hat Network 來散佈;但 Red Hat Update Agent(
up2date
)必須強迫接受這些套件。強烈建議您簽署套件,詳情請參閱 節 3.2, “RHN 套件的數位簽章”。 - 如果套件以任何方式改變過,請將這改變放入簽名中,或重新編譯,這版本或釋出版本必須累進計算。換句話說,透過 RHN 散佈的每個 RPM 的 NVRA(包含版本)必須反映出一個獨一無二的版本,以避免混淆。
- 沒有 RPM 可以自行淘汰。
- 如果一個套件被分成多個獨立套件,請特別注意相依性問題。除非您有充份的理由,否則請不要將現有套件分開。
- 沒有套件會仰賴互動式的安裝前、安裝後、反安裝前或反安裝後程序檔。如果套件需要使用者的直接干預,那麼它無法與 Red Hat Network 運作。
- 任何安裝前、安裝後、反安裝前或反安裝後程序檔都不該將任何東西寫入 stderr 或 stdout。如果需要的話,請將訊息重新導向到
/dev/null
。否則的話,請寫入檔案。 - 當建立 spec 檔案時,請使用
/usr/share/doc/rpm-<version>/GROUPS
的群組定義。如果沒有完全符合的定義,請選一個次好的。 - 請使用 RPM 相依性的功能,確定程式在安裝後能正常執行。
重要
不要在安裝後程序檔中,用備份檔案,然後再解壓縮的方式建立 RPM。這會覆寫 RPM 的用意。
如果備份中的檔案不包括在檔案清單中,就無法驗證或檢查其衝突。在大部份情形下,RPM 會有效地壓縮、解壓縮。舉例來說,您不在
%postun
一節中清除的檔案,就不應該在 %post
中建立。
3.2. RHN 套件的數位簽章
所有透過 RHN 發佈的套件都應該擁有 數位簽章。數位簽章是以獨一無二的私有金鑰所建立,可以透過相關的公開金鑰來驗證。在建立套件之後,SRPM(原始碼 RPM)與 RPM 可以用 GnuPG 金鑰來簽署。在套件安裝之前,公開金鑰會用來驗證套件,這套件是由受信任方所簽署,同時在簽署之後,這套件沒有被修改過。
3.2.1. 產生 GnuPG 金鑰配對
GnuPG 金鑰配對包括私有金鑰與公開金鑰。要產生金鑰配對,請在提示符號中,以 root 身份輸入以下指令:
gpg --gen-key
如果您以非 root 身份執行這個指令,您會看到以下訊息:
gpg: Warning: using insecure memory!
這訊息會出現是因為非 root 使用者不能鎖定記憶體分頁。因為您不希望任何人擁有您的私有 GnuGP 金鑰或密碼字串,請以 root 身份產生金鑰配對。root 使用者可以鎖定記憶體分頁,這表示這訊息永遠不會寫入磁碟中。
在執行這指令,產生金鑰配對後,您會看到一個簡介畫面,包含金鑰的選項,類似以下:
gpg (GnuPG) 1.2.6; Copyright (C) 2004 Free Software Foundation, Inc. This program comes with ABSOLUTELY NO WARRANTY. This is free software, and you are welcome to redistribute it under certain conditions. See the file COPYING for details. Please select what kind of key you want: (1) DSA and ElGamal (default) (2) DSA (sign only) (4) RSA (sign only) Your selection?
請接受預設選項:
(1) DSA and ElGama1
。這選項能讓您建立數位簽章,並以兩種技術進行加密 / 解密。請輸入 1
,然後按下 Enter。
接下來,請選擇金鑰的大小,也就是金鑰的長度。金鑰愈長,您的訊息就愈能抵抗攻擊。建議您建立長於 1024 位元的金鑰。
接下來的選項會請您指定金鑰的期限。如果您選擇的一個過期日,請記得通知使用您公開金鑰的人這個過期日,並給予新的金鑰。建議您不要選擇過時日。如果您不選擇過期日,系統會跟您確認這一點:
Key does not expire at all Is this correct (y/n)?
請按下 y 確認您的決定。
您接下來的工作是提供一組使用者 ID,包含您的姓名、電子郵件位址、以及選用的註解。每一項東西都要求您分開輸入。當您完成後,您會看到您輸入訊息的摘要。
一旦您接受這些選擇後,請輸入一組密碼字串。
注意
跟您帳號的密碼一樣,好的密碼字串是 GnuPG 最基本的安全防護。請用大小寫字母、數字、以及 / 或標點符號,來組成您的密碼字串。
在您輸入、驗證了密碼字串後,您的金鑰就會產生。如以下的訊息會出現:
We need to generate a lot of random bytes. It is a good idea to perform some other action (type on the keyboard, move the mouse, utilize the disks) during the prime generation; this gives the random number generator a better chance to gain enough entropy. +++++.+++++.++++++++....++++++++++..+++++.+++++.+++++++.+++++++ +++. ++++++++++++++++++++++++++++++++++++++..........................++++
當畫面上的工作都停止時,您的新金鑰會放在 root 家目錄的
.gnupg
目錄中。會放在這裡,是因為您以 root 身份執行指令的關係。要列出您的 root 金鑰,請執行以下指令:
gpg --list-keys
您會看到類似以下的畫面:
/root/.gnupg/pubring.gpg ---------------- pub 1024D/B7085C8A 2002-02-18 Your Name<you@example.com> sub 1024g/E12AF9C4 2002-02-18
要讀取您的公開金鑰,請使用以下指令:
gpg --export -a 'Your Name' > public_key.txt
您的公開金鑰會寫入
public_key.txt
檔案。
這公開金鑰非常重要。它是必須發佈到所有透過
up2date
接收自訂軟體的用戶端系統之金鑰。在組織中發佈這金鑰的技巧都列在《Red Hat Network 用戶端設定指南》中。
3.2.2. 簽署套件
在您簽署套件前,您必須設定您的
~/.rpmmacros
檔案,包括以下:
%_signature gpg %_gpg_name B7085C8A
請以您 GPG 金鑰環中的金鑰 ID,取代
_gpg_name
的值 B7085C8A。這個值會告訴 RPM 要用哪一個簽章。
要簽署套件 package-name-1.0-1.noarch.rpm 套件,請執行以下指令:
rpm --resign package-name-1.0-1.noarch.rpm
輸入您的密碼字串。要確定套件已經簽署,請執行以下指令:
rpm --checksig -v package-name-1.0-1.noarch.rpm
您應該會看到畫面上出現
Good signature from "Your Name"
,其中 Your Name 會以與此簽署金鑰有關的名稱所取代。
章 4. 自訂頻道與套件管理
自訂頻道能讓管理者用 Red Hat Network 架構,佈署組織內部自行建立與管理的套件。所有頻道與套件管理的活動都在 RHN 網站上的「頻道」分頁中發生。本處使用的指示將與 RHN 參考指南‧RHN 網站 一章相結合。
注意
由於透過您的生產環境,發佈未經測試的套件,可能會發生潛在性的問題,因此 Red Hat 強烈建議您建立測試頻道,在正式使用前僅選幾台電腦做測試。
舉例來說,如果您有一組會收到自訂套件的網站伺服器,請建立暫時性的頻道,以將套件安裝在一台不擔負重要任務的系統上。這可能是開發用途或階段性的伺服器,而「不是」投入生產的系統。這些暫時性頻道之後可透過 節 4.8, “刪除軟體頻道” 中所描述的步驟刪除。
4.1. 頻道管理的權利
為了進行任何頻道管理工作,使用者必須取得適當的權限,這身份稱為頻道管理員。這些存取權限可以透過 Red Hat Network 網站來修改。權限會透過Organization Administrator指定給使用者,這是最高等級的管理員。頻道管理員的權利會以以下方法授與:
- 以 Organization Administrator 身份登入 Red Hat Network 網站。
- 在上方導覽列,點選「使用者」分頁,然後按下將進行頻道管理工作的使用者名稱。
- 在「使用者的詳細資料」網頁中,將視窗下拉至「角色」一節,勾選「頻道管理員」。然後按下網頁下方的「送出」。請注意 Organization Administrator 會自動被授與頻道管理者的權利。
- 以該使用者身份登入 Red Hat Network 網站,按下上方導覽列的「頻道」分頁,確定「管理軟體頻道」按鈕會出現在相對應的左方導覽列中。
4.2. 管理軟體頻道
除了標準 RHN Management 等級使用者可用的按鈕與網頁以外,RHN Satellite Server 與 RHN Proxy Server 用戶也可以從左方導覽列存取「管理軟體頻道」。這按鈕會開啟「軟體頻道管理」介面,其中包含所有自訂軟體頻道的管理工作。
警告
如果您使用了 RHN Proxy Server 與 RHN Satellite Server,請只在 Satellite 上管理自訂頻道與套件,因為 Proxy 伺服器會從前者直接收到升級檔。在這種組合下,在 Proxy 上手動管理套件與頻道可能會讓您伺服器間的資料不同步。
請點選「軟體頻道管理」清單中的連結,這會讓您連上「已管理的軟體頻道之詳細資訊」網頁中的多個分頁。按下頻道名稱將會開啟「詳細資料」分頁,而按下套件數量則會開啟「套件」分頁的「列出/移除」子分頁。請參閱 節 4.3, “管理軟體頻道的詳細資訊”,以取得這些區域的完整解說。
4.3. 管理軟體頻道的詳細資訊
虛擬上所有自訂頻道管理工作都會在「管理軟體頻道的詳細資料」網頁中進行,按下左方導覽列的「管理軟體頻道」,然後選擇要修改的頻道名稱。這網頁包含了兩個主要分頁:「詳細資料」與「套件」。
- 「詳細資料」— 提供關於頻道的基本資料,例如其父頻道、名稱、摘要、以及描述。其中一些資訊是可以修改的。除此之外,Organization Administrator 與頻道管理員可以看到「全域可訂閱」勾選方塊。這指出了每個頻道能讓任何使用者將系統訂閱此頻道的預設行為。取消勾選這方塊並按下「更新頻道」,畫面上會出現「訂閱者」分頁,可以授與一些使用者訂閱這頻道的權利。
- 「訂閱者」— 列出對這自訂頻道擁有訂閱權限的使用者清單。這分頁會在兩個條件為真的時候出現。第一,登入的使用者必須是 Organization Administrator 或頻道管理員。第二,「詳細資料」分頁中的「全域可訂閱」勾選方塊必須不勾選,這樣使用者才可以訂閱頻道。在這分頁中,請勾選允許將其系統訂閱這頻道的使用者,按下「更新」。請注意 Organization Administrator 與頻道管理員會自動擁有訂閱所有頻道的權利。
- 「管理員」— 列出對自訂頻道擁有管理權限的使用者。Organization Administrator 與頻道管理員可以看到這分頁。請勾選允許擁有這頻道完整管理權限的使用者,然後按下「更新」。這狀態並不能讓使用者建立新頻道。請注意,Organization Administrator 與頻道管理員對所有頻道會自動擁有管理權限。
- 「勘誤」— 提供與您每個自訂頻道相關的勘誤。跟 Red Hat Network 產生、發送 Red Hat Enterprise Linux 軟體勘誤一樣,您可以將勘誤升級發送到您的自訂頻道中,作為以最新原始碼更新您伺服器的一部分。這分頁包含的子分頁能讓您檢視、新增、移除、並複製勘誤:「新增/移除」、「新增」與「複製」。請注意複製勘誤只能透過 RHN Satellite Server 完成。
- 「新增/移除」— 顯示所有目前與自訂頻道有關的勘誤,並提供方法來取消這關聯。要從頻道中移除勘誤,請選擇勘誤的勾選方塊,按下網頁右下方的「移除勘誤」。確認頁會出現,上面會列出要刪除的勘誤。請按下「確認」完成這動作。
- 「新增」— 將勘誤新增至頻道中。所有可套用至這頻道的勘誤都會列出來。若要將勘誤新增至頻道中,請選擇適當的核取方塊,並按下「新增勘誤」。欲取得更多有關於勘誤管理的詳情,請參閱 章 5, 自訂勘誤管理。
- 「複製」— 這能讓 Satellite 用戶為已複製的頻道複製勘誤與相關套件。這子分頁會立即呈現頻道的散佈過程,這可能是從原有狀態或所選的勘誤選項而來。每當發送勘誤至目標(也就是原始的)頻道時,「複製」分頁亦可取得勘誤。這對於以現有狀態複製的頻道來說,也相當有用。有關於複製選項上的詳情,請參閱 節 4.7, “複製軟體頻道”。要把勘誤從目標頻道納入複製的頻道,請從每個建議的下拉式視窗中,選擇「合併」或「複製」。「合併」選項只有在該勘誤之前被複製過的時候,才會存在。請用這個使勘誤在頻道間有所關聯,並避免重複。請使用「複製」選項來建立新的項目,就和您由先前的複製所進行的修改一樣。就預設值,已複製的勘誤會繼承原始 Red Hat 建議的標籤,但起始的「RH」會被改為「CL」。舉例來說,RHSA-2003:324 會變成 CLSA-2003:324。接下來的複製項目如果有同樣的名字,那麼字母便會繼續排下去,例如「CM」與「CN」。這些標籤可以透過「已管理的勘誤之詳細資料」網頁來修改。詳情請參閱 節 5.2, “管理勘誤的詳細資料”。除了「合併」選項之外,之前複製的勘誤包括「擁有勘誤」一欄中包含的值。此勘誤標籤會與其詳細資料網頁相連結。括號中的「pub」與「mod」旗標標明了這個複製的勘誤已經公開或被修改過。旗標前的「+」號表示已經確認,該複製勘誤已經公開。「-」號的意義則相反,舉例來說,「(-mod)」意味著套件已經被刪除。若要取得更多有關於公開與編輯自訂勘誤的相關資訊,請參閱 節 5.1, “管理勘誤”。要將勘誤從複製頻道中排除,請從其下拉式選單中,選擇「什麼都不做」。做好改變之後,請按下「複製勘誤」。請檢視確認頁上的訊息,確定後請按下「更新勘誤」。
- 「Sync」— 顯示了未包含在初始頻道複製中,不過之後已更新的勘誤套件。此網頁能讓您透過選取欲選擇的核取方塊,並按下「同步勘誤」,以為您已複製的頻道與目前的勘誤進行同步化。
- 「套件」— 提供與每個自訂頻道相關的套件。這分頁包括的子分頁能讓您檢視、新增與移除套件:「列出/移除」、「新增」、與「比較」。
- 「新增/移除」— 顯示所有目前與自訂頻道有關的勘誤,並提供方法來取消這關聯。要從頻道中移除勘誤,請選擇勘誤的勾選方塊,按下網頁右下方的「移除勘誤」。確認頁會出現,上面會列出要刪除的勘誤。請按下「確認」以完成這項動作。
重要
此清單與透過標準「軟體頻道的詳細資料」頁面出現的套件清單不同,它顯示了所有存在於資料庫中的套件版本,而不是只有最新的版本。您只要移除最新的版本,就可回復到先前版本的套件。 - 「新增」— 將勘誤新增至頻道中。若要檢視可用的套件,請從「檢視」下拉式視窗中選擇選項,然後按下「檢視」。若要將套件加入您正在編輯的頻道,請選擇適當的勾選方塊,然後按下「新增套件」。有關於這項程序的詳情,請參閱 節 4.6, “將套件指定到軟體頻道中”。
- 「比較」— 比較不同頻道中的套件清單。要檢視不同之處,請從「比較:」下拉式選單中選擇另一個頻道,按下「比較」。清單會顯示所有不包含在雙方套件中的清單,並指出每個現有頻道的位置。
4.4. 管理軟體套件
除了在頻道中新增與移除套件之外,您也可以從整個資料庫與檔案系統中,移除套件。從檔案系統上移除套件會晚一個小時完成。這可以透過「軟體套件管理」網頁來完成,方法是按下左方導覽列的「管理軟體套件」。
警告
雖然從資料庫中刪除套件可藉由再次上傳套件來復原,但這些套件會失去與任何勘誤之間的關聯。重新載入後,這些套件必須手動與這些勘誤重新連結。詳細指示請參閱 章 5, 自訂勘誤管理。
若要從資料庫中移除套件,請在「軟體套件管理」網頁中,從「檢視」下拉式選單中選擇包含套件的選項,然後按下「檢視」。然後選擇適當的勾選方塊,按下「刪除套件」。確認頁會出現,其中列出套件。請按下「確認」,來刪除所有套件。
由於套件實際上是儲存在 RHN Proxy Server 上的,其自訂套件雖然已經列出,但無法透過 RHN 網站下載。用戶端系統必須使用
up2date
指令來擷取這些套件。由於 RHN Satellite Server提供了自己的網站,其自訂套件就可以透過 HTTP 或 Red Hat Update Agent 來存取。要獲得自訂套件,用戶端系統必須訂閱包含這些套件的頻道。
4.5. 建立軟體頻道
在將套件上載至伺服器之前,您能夠建立一個自訂頻道來存放它們。欲取得相關指南,請參閱 章 6, 上傳與維護自訂套件。一旦上載之後,套件便能依照 節 4.6, “將套件指定到軟體頻道中” 之中所描述地,透過網站重新分配。
注意
請確認您沒有建立包含了與系統不相容的套件的子頻道供客戶端系統使用。
此外,您的子頻道不應包含來自於「rhn-tools」或「rhel-virtualization」頻道的內容,因為來自於這些頻道的套件,是在使用網站使用者介面自動訂閱系統時,用來辨識這些頻道的套件。特屬的套件為
rhncfg
(使用來辨識「rhn-tools」頻道)以及 libvirt
(使用來辨識「rhel-vt」頻道)。
頻道可以在 Red Hat Network 網站上建立,如下所述:
- 以頻道管理者的身份登入 Red Hat Network。
- 在上方導覽列中,點選「頻道」分頁,然後按下左方導覽列的「管理軟體頻道」按鈕。
- 請在「軟體頻道管理」網頁中,按下右上角的「建立新軟體頻道」。RHN Satellite Server 管理者能選擇「複製頻道」。詳情請參閱 節 4.7, “複製軟體頻道”。
- 在「新頻道」網頁中,請跟隨網頁上的指示,定義頻道的詳細資料。對大部份頻道管理動作來說,「頻道標籤」是用來分辨頻道用,因此請選擇具描述性的標籤。請檢視現有頻道的詳細資料,以獲得參考資料。「GPG 金鑰網址」必須是伺服器上金鑰的位置,一如用戶端設定過程中所定義的。詳情請參閱 Red Hat Network 用戶端設定指南。GPG 金鑰 ID 是獨一無二的識別子,例如「DB43A60E」,而 GPG 金鑰指紋則類似「CA20 8686 2BD6 9DFC 65F6 ECC4 2191 80CD DB42 A60E」。請注意,金鑰 ID 與金鑰指紋最後一對數字是一樣的。
- 完成之後,請按下網頁下方的「建立頻道」。
4.6. 將套件指定到軟體頻道中
當套件剛被載入之後,它們能被指定給自訂頻道、多重自訂頻道,或無任何頻道。如欲取得相關指南,請參閱 章 6, 上傳與維護自訂套件。上載之後,套件將可被重新指定於「自訂頻道」和「無頻道」軟體庫之間。
這些功能都可以透過按下上方導覽列的「頻道」分頁,與左方導覽列的「管理軟體頻道」來完成。在「軟體頻道管理」網頁中,請按下頻道的名稱來收到套件。
在「已管理的軟體頻道詳細資料」網頁中,點選「套件」分頁,然後按下「新增」子分頁。要將套件與正在編輯的頻道建立關聯,請從「檢視」下拉式選單中,選擇包含這套件的選項,然後按下「檢視」。已與編輯中之頻道關聯的套件不會顯示出來。未指定給特定頻道的套件,可在「無頻道的套件」中找到。選擇「所有受管理的套件」可看到所有可用的套件。
在按下「檢視」之後,已選擇之選項的套件清單就會出現。請注意網頁標頭依然會列出修改中的頻道。在套件清單中,請選擇套件的勾選方塊,將之指定給編輯的頻道,然後按下網頁右下方的「新增套件」。確認網頁將會出現,並列出套件。請按下「確認」,以將套件與頻道建立關聯。接下來畫面將會出現「已管理的軟體頻道詳細資料」網頁的「列出/移除」子分頁,並列出新的套件。
一旦套件指定給頻道,勘誤快取便會更新,以反映這項變更。此更新會有短暫的延遲時間,好讓使用者在所有變更生效前完成頻道編輯。要手動開始您對快取的變更,請按下「列出/移除」子分頁上方的「立即使改變生效」連結。
4.7. 複製軟體頻道
RHN Satellite Server 頻道管理者也有複製軟體頻道的能力,好進行簡單的套件關聯。複製能給您完整複製頻道的權力,讓您立即將適當的套件與勘誤與自訂軟體頻道建立關聯。若要存取這項功能,請點選上方導覽列的「頻道」分頁,然後按下左方導覽列的「管理軟體頻道」。畫面上會出現「軟體頻道管理」網頁。要開始進行複製,請按下右上方的「複製頻道」。
您馬上會看到三個複製選項:頻道的目前狀態、頻道的原始狀態、或選擇勘誤。這些選項在網頁上皆有完整說明,摘要如下:
- 「頻道的目前狀態」— 所有勘誤與所有最新套件現在皆在目標頻道中。
- 「頻道的原始狀態」— 所有目標頻道的原始套件皆在其中,但不包括勘誤或相關的升級套件。
- 「選擇勘誤」— 所有來自目標頻道的原始套件,加上排除某些勘誤與相關升級套件的能力。
請用「複製」欄位中的選擇鈕,選擇您想要的選項,使用「從何處複製」下拉式選單中,選擇目標頻道,然後按下「建立頻道」。
請依照 節 4.5, “建立軟體頻道” 中所描述地來完成填入「新軟體頻道」網頁上的欄位。通常預設值便已足夠。當完成後,請按下「建立頻道」。若您選擇了原本或目前的選項,您將會被導向至「已管理的軟體頻道詳細資料」網頁的「詳細資料」分頁,在此您能夠為新頻道修改設定。欲取得相關指南,請參閱 節 4.3, “管理軟體頻道的詳細資訊”。
如果您使用「選擇勘誤」選項來複製頻道,您則會被導向至「已管理的軟體頻道詳細資料」網頁的「複製」子分頁,其中您可個別選擇勘誤與相關聯的套件,以供複製和包含在新頻道中。詳情請參閱 節 4.3, “管理軟體頻道的詳細資訊”。
4.8. 刪除軟體頻道
RHN Satellite Server 與 RHN Proxy Server 系統管理員亦擁有將未使用到的頻道移除掉的能力。此動作是在頻道網頁的「已管理的軟體頻道詳細資料」的「詳細資料」分頁中所進行的。開啟了此分頁之後(在 節 4.3, “管理軟體頻道的詳細資訊” 之中已詳細描述),請點選位於網頁右上方角落的「刪除軟體頻道」來將頻道以及所有特別與它相聯的套件,完整地移除掉。在接下來的網頁中,請按下「刪除頻道」來完成動作。
透過網站移除頻道,會自動刪除所有該頻道相關的套件。與其他頻道相關的套件則會保留。如果您已經在連上 Satellite 的 Proxy 上建立頻道,您必須刪除 RHN Proxy Server 上的頻道。
章 5. 自訂勘誤管理
自訂勘誤能讓您為自訂頻道中的套件發出勘誤警示。所有勘誤管理動作都在 RHN 中的「勘誤」分頁中進行。以下的指示皆與 Red Hat Network Reference Guide‧的 RHN 網站章節搭配使用。
5.1. 管理勘誤
除了標準 RHN Management 等級用戶可用的按鈕與網頁以外,RHN Satellite Server 與 RHN Proxy Server 用戶也可以從左方導覽列存取「管理勘誤」。此按鈕會開啟「勘誤管理」介面,其中所有自訂勘誤管理的工作皆在此進行。
警告
如果您同時使用了 RHN Proxy Server 與 RHN Satellite Server,您必須僅在 Satellite 上管理勘誤,因為 Proxy 伺服器會直接由此接收更新。在這相結合的環境中,於 Proxy 上管理勘誤會讓您的伺服器間的資料不同步。
按下「勘誤管理」中的任何建議,您就會看到「已管理的勘誤詳細資料」網頁的「詳細資料」分頁。欲取得本區的完整詳細解說,請參閱 節 5.2, “管理勘誤的詳細資料”。
5.1.1. 已公佈的勘誤
當您按下左方導覽列的「管理勘誤」時,將會出現「已公佈的勘誤」網頁,這是預設的網頁。它顯示您組織已建立並散佈的勘誤警示。
若要編輯一個現有的已公佈勘誤,請按照 節 5.3, “建立與編輯勘誤” 之中所描述的步驟進行。若要發佈勘誤,請點選「勘誤詳情」網頁右上方角落的「發送通知」。勘誤警告會被傳送給所有受影響系統的所屬系統管理員。
5.1.2. 未公佈的勘誤
當您按下左方導覽列「管理勘誤」下方的「未公佈」後,您會看見「未公佈的勘誤」。它會顯示您組織已建立,但尚未公佈的勘誤警示。
若要編輯一項未公佈的勘誤,請按照 節 5.3, “建立與編輯勘誤” 中所描述的步驟進行。若要公佈勘誤,請點選「勘誤詳情」網頁右上方角落的「公佈勘誤」。接著,您將需要確認與該勘誤相聯的頻道,然後按下位於右下角的「公佈勘誤」按鈕。此勘誤警告會被移至「已公佈」網頁等待發佈。
5.2. 管理勘誤的詳細資料
如果您按下「已公佈」或「未公佈」網頁中,任何受管理勘誤警示的建議,其「已管理的勘誤詳細資料」網頁便會出現。此網頁進一步分成三個分頁:「詳細資料」、「頻道」以及「套件」。
- 「詳細資料」— 提供您在建立時輸入,關於自訂勘誤的主要資訊。這包括大綱、建議名稱與種類、相關產品、錯誤、描述、解決方法、關鍵字、參考、以及附註。要改變任何上列資訊,請修改適當欄位,按下「更新勘誤」。
- 「頻道」— 顯示與所選勘誤相聯的頻道。要改變這些關聯,請選取或取消選取適當的勾選方塊,按下「更新頻道」按鈕。
- 「套件」— 分頁包括了兩個子分頁,讓您可以檢視、增加、移除套件:「列出/移除」與「新增」。
- 「列出/移除」— 顯示所有目前與這自訂勘誤相聯的套件,並提供取消這關聯的方法。要從勘誤中移除套件,請勾選之,按下網頁右下角的「移除套件」。確認頁會出現,列出所有要移除的套件。請按下「確認」,完成這項工作。
- 新增 — 能讓套件加入勘誤中。若要檢視可用套件,請由「檢視」下拉式選單中選取選項,然後按下「檢視」。若要將您正在編輯的勘誤加入套件中,請選擇適當的勾選方塊,並按下「新增套件」。欲取得此程序的詳細資訊,請參閱 節 5.4, “將套件指定到勘誤”。
5.3. 建立與編輯勘誤
請遵循這步驟,製作自訂的勘誤警示。
- 在上方導覽列中,請按下「勘誤」,然後按下左方的「管理勘誤」。請由「勘誤管理」網頁中,按下「建立新勘誤」。
- 請在「建議」欄位中,為此勘誤輸入敘述性的標籤,最好能遵循您組織的命名方式。請注意此標籤不能以「RH」開始(大小寫皆然),以避免自訂勘誤與 Red Hat 發出的勘誤相混淆。
- 接著,請完成所有剩下的所需欄位,並按下「建立勘誤」按鈕。請以標準的 Red Hat 勘誤警示作為範例,完成欄位的填寫。
RHN Satellite Server 系統管理員亦可透過複製現有的勘誤,以建立其它勘誤。此複製程序會將與該勘誤相聯的套件保留住,並簡化勘誤發放。欲取得相關指南,請參閱 節 5.5, “複製勘誤”。
若要編輯現有勘誤警示的詳細資料,請點選「勘誤管理」網頁中的建議,在「詳細資料」分頁中做出適當的變更,然後按下「更新勘誤」按鈕。請按下「頻道」分頁來修改勘誤的頻道關聯。請按下「套件」分頁來檢視、修改其套件。
若要刪除勘誤,請選擇「勘誤管理」網頁中,勘誤的勾選方塊,按下「刪除勘誤」按鈕,然後確認這項動作。請注意,刪除已公佈的勘誤可能會花上幾分鐘的時間。
注意
如果您想要在您的系統發出勘誤警示時收到電子郵件,請至 RHN 網站上的「您專屬的 RHN」=>「偏好設定」,並選擇「收取電子郵件通知」。此設定對於您組織中已訂閱之系統的管理員來說,非常有幫助。
5.4. 將套件指定到勘誤
請遵循這步驟,將套件指定到勘誤。
- 在選擇要編輯的勘誤後,請按下「套件」分頁,然後點選「新增」子分頁。
- 要將目前正在編輯的勘誤與套件建立關聯,請由「檢視」下拉式選單中選取頻道,選單中包含了您想要納入的套件,然後按下「檢視」。已經與編輯中的勘誤建立關聯的套件不會顯示在此。選擇「所有管理套件」將會出現所有可用套件。
- 在按下「檢視」之後,所選選項的套件清單就會出現。請注意這網頁的標頭還顯示,勘誤正在編輯中。
- 在清單中,選擇要指定到編輯勘誤的套件之勾選方塊,然後按下網頁右下角的「新增套件」。
- 確認網頁將會出現,上面會顯示套件清單。請按下「確認」,以建立套件與勘誤之間的關聯。「已管理的勘誤之詳細資料」網頁的「列出/移除」子分頁將會出現,並列出新的套件。
一旦套件指定到勘誤,勘誤快取就會更新,以反映這個變更。這更新會稍微延遲一下,好讓使用者在做出變更之前,有時間完成編輯勘誤的工作。要手動更新快取,請遵循網頁上方「立即做出變更」的指示。
5.5. 複製勘誤
您可以複製勘誤,以輕易地複製並散佈,作為 RHN Satellite Server 的一部分。只有能潛在套用到您頻道的勘誤,才能複製。能套用到頻道的勘誤,是從該勘誤可套用的頻道複製出來的頻道。要使用這功能,請按下上方導覽列的「勘誤」,然後按下左方導覽列的「複製勘誤」。只有您是 RHN Satellite Server 用戶時,此按鈕才會出現。
在「複製勘誤」網頁中,從「檢視」下拉式選單中選擇包含這勘誤的頻道,然後按下「檢視」。出現了勘誤清單之後,請勾選要複製的勘誤,點選「複製勘誤」。確認網頁將會出現,並列出勘誤。請按下「確認」以完成複製工作。
複製的勘誤會出現在您未公佈的勘誤清單中。從這清單中,您可以驗證勘誤文字,以及與這勘誤相關的套件。準備好之後,您就可以發佈這個勘誤,您組織中的使用者就可以使用這勘誤。
章 6. 上傳與維護自訂套件
端看用得是何種 Red Hat Network 服務,有兩種機制可以用將套件上傳到私有頻道中。
RHN Proxy Server 的用戶使用 RHN Package Manager 應用程式,它可以將套件表頭資訊傳送到 Red Hat Network 伺服器,並將套件本身放到使用 RHN Package Manager 的 Proxy 之本機軟體庫中。
RHN Satellite Server 的用戶使用 RHN Push 應用程式,它可以將套件表頭資訊傳送到本機的 RHN Satellite Server 上,並將套件放到使用 RHN Push 的 Satellite 上。
本章將詳細描述這兩個工具。
警告
如果您同時使用了 RHN Proxy Server 與 RHN Satellite Server,請使用 RHN Push 即可。Proxy-Satellite 的組合僅需要將自訂套件與頻道上傳至 Satellite。Proxy 會從該處獲得套件,並發送到用戶端系統上。
6.1. 上傳套件至 RHN Proxy Server
RHN Package Manager 能讓一個組織透過 RHN Proxy Server,利用私有的 RHN 頻道發送自訂套件。如果您希望 RHN Proxy Server 僅服務 Red Hat Enterprise Linux 套件,您不需要安裝 RHN Package Manager。
要使用 RHN Package Manager,請安裝
rhns-proxy-package-manager
RPM 套件及其相依套件。此套件可以在已註冊的 RHN Proxy Server 系統上找到,或以執行 up2date rhns-proxy-package-manager
的方式安裝。
注意
只有套件的表頭資訊會上傳到 RHN 伺服器上。表頭是必備的資訊,這樣 RHN 才可以解決用戶端系統上,套件的相依性問題。真正的套件檔案(
*.rpm
)會儲存在 RHN Proxy Server 上。因此,雖然自訂套件都列了出來,但卻不能透過 RHN 網站下載。這些套件必須在用戶端上,透過 up2date
存取。
6.1.1. 設定與使用 RHN Package Manager
在您使用 RHN Package Manager 將套件上傳到 RHN 之前,您需要先手動複製套件到 Proxy 伺服器。舉例來說,您可以在發展機器上用
scp
指令。
scp foo.rpm root@rhnproxy.example.com:/tmp
當使用 RHN Package Manager 將套件上傳到 Red Hat Network 時,指向您之前複製到伺服器的檔案。
注意
在將自訂套件上傳至 Red Hat Network 前,請建立至少一個私有頻道,以接收這些套件。這是因為系統要收到套件前,頻道是必要的東西。
以下指令會將套件的表頭上傳至 RHN 伺服器,並將套件複製到 RHN Proxy Server 儲存地去:
rhn_package_manager -c label_of_private_channelpkg-list
label_of_private_channel 是個建立來取得這些套件的自訂頻道。請確認您使用建立頻道時所設立的精確頻道標籤。如果您要指定一或多個頻道(透過
-c
或 --channel
),所上傳的套件表頭會與所有指定的頻道相連結。若您未指定頻道,套件將存在「套件管理」網頁中的「無頻道」一節中。有關於重新指定套件上的說明,請參閱 節 4.6, “將套件指定到軟體頻道中”。
pkg-list 參考了要上傳套件的清單。這些套件必須已經複製到 Proxy 主機上。否則的話,請使用
-d
選項,指定包含要加入頻道的套件之目錄。RHN Package Manager 也可以從標準輸入讀取套件清單(使用 --stdin
選項)。
其他選項會在一個設定檔中指定,例如 Red Hat Network 伺服器網址、HTTP 代理伺服器的使用者名稱與密碼(如果您的 HTTP 代理伺服器需要認證的話),以及套件所在地的上層目錄。此特定設定一定「不能被」修改,並且必須位在
/etc/rhn/default/rhn_proxy_package_manager.conf
中。您可以藉由修改主設定檔 /etc/rhn/rhn.conf
或透過傳送到 RHN Package Manager 的指令列選項,覆寫預設設定檔中的這些選擇。
不在此檔案中設定的參數會從目前登入的使用者家目錄的
.rhn_package_manager
中讀取,最終會從 /etc/rhn/rhn_package_manager.conf
中讀取。請確定所有這些檔案都有正確的存取權限,以避免其他使用者讀取。
在上傳套件之後,請檢查本機目錄是否與 RHN 伺服器的頻道映像同步:
rhn_package_manager -s -c name_of_private_channel
-s
選項會列出所有遺失的套件,也就是已經上傳到 RHN 伺服器,但不存在於本機目錄的套件。您必須是 Organization Administrator 才可以使用此選項。此應用程式會提示您輸入 RHN 使用者名稱與密碼。
--copyonly
選項會將參數中列出的套件複製到特定的頻道中,而不會上傳到 Satellite 上。這在 RHN Proxy Server 上的頻道遺失了一個套件,而您不想重新匯入頻道中的所有套件時,特別有用。
rhn_package_manager -c channel-name --copyonly /path/to/missing/file
您也可以使用 RHN Package Manager 擷取頻道內的套件清單,因為它們都儲存在 RHN 伺服器上:
rhn_package_manager -l -c name_of_private_channel
-l
選項會列出位於特定頻道的每個套件名稱、版本號碼、釋出版本、架構,以及頻道名稱。欲取得額外選項上的相關資訊,請參閱 表格 6.1, “rhn_package_manager
選項”。
表格 6.1, “
rhn_package_manager
選項” 為 RHN Package Manager(rhn_package_manager
)的所有指令列選項摘要。
表格 6.1. rhn_package_manager
選項
選項 | 描述 |
---|---|
-v, --verbose | 增加標準輸出訊息的量。 |
-d, --dir DIRECTORY_NAME | 從此目錄處理套件。 |
-c, --channel CHANNEL_NAME | 指定收到套件的頻道。您可以使用多個 -c ,指定多個頻道(例如 -c channel_one -c channel_two ) |
-n, --count NUMBER | 每次呼叫時,處理這個數量的表頭 — 預設值為 32。 |
-l, --list | 列出特定頻道的套件。 |
-s, --sync | 檢查本機目錄是不是與伺服器的同步。 |
-p, --printconf | 印出目前設定並離開。 |
--newest | 只將更新的套件推送到伺服器上。請注意,原始碼套件檔是很特別的,因為其版本不會相比較。新舊與否取決於它們的相關二進位套件。使用 RHN Package Manager 此選項與一個原始碼套件檔會上傳套件,但是原始套件並不會出現在 RHN 網站界面中,除非相關的二進位套件也上傳。請將這個與 --source 相比較。合用 --source --newest 選項「會」以更新的版本更新獨立的原始碼套件,並不需要先上傳相關的二進位檔。 |
--source | 上傳所指示的原始碼套件。作法是將其視為獨立套件,同時並「不」視為與另一個、之前就存在的二進位套件相互關聯的特別原始碼套件。舉例來說,您可以在想要把原始碼套件,散佈給自外於正規原始碼控制管理的程式設計師與測試人員時,就可以這樣用。 |
--stdin | 從標準輸入讀取套件名稱。 |
--nosig | 即使套件沒有簽署,依舊繼續執行。 |
--no-ssl | 關閉 SSL(不建議)。 |
--stdin | 從標準輸入讀取套件名稱。 |
--username USERNAME | 指定 RHN 的使用者名稱。如果您沒有輸入使用者名稱,系統會提示您輸入頻道管理者的使用名稱。 |
--password PASSWORD | 指定 RHN 密碼。如果您沒有輸入,系統會提示您輸入頻道管理者的密碼。 |
--dontcopy | 在上傳後的步驟中,不複製套件到套件樹中的最後位置。 |
--copyonly | 僅複製套件,不重新匯入。 |
--test | 僅列出將被推送的套件清單。 |
-?, --help | 顯示求助清單,包括選項清單。 |
--usage | 簡短描述可用選項。 |
--copyonly | 僅複製套件 |
注意
這些指令列選項在
rhn_package_manager
的 man page 中有所描述:man rhn_package_manager
。
6.2. 將套件上傳至 RHN Satellite Server
RHN Push 應用程式能讓您透過 RHN Satellite Server,提供與私有 RHN 頻道相關的自訂套件。如果您想要 RHN Satellite Server 僅提供 Red Hat Enterprise Linux 套件,您就不需要安裝 RHN Push。
要使用 RHN Push,請安裝
rhnpush
套件及其相依套件。此套件可以在已註冊的 RHN Satellite Server 系統找到,或者執行 up2date rhnpush
。
RHN Push 會將 RPM 表頭資訊上傳至 RHN Satellite Server 資料庫,並將 RPM 放在 RHN Satellite Server 套件儲存地中。與 RHN Proxy Server 的 RHN Package Manager 不同,RHN Push 永遠不會散佈套件資訊,即使是表頭,到 RHN Satellite Server 資料庫之外。
注意
如果您的 Satellite 安裝啟用了支援 Solaris 作業系統,您可以從 Solaris 用戶端使用 RHN Push,以上傳 Solaris 套件內容到自訂 Solaris 頻道。
6.2.1. 設定 RHN Push 應用程式
當安裝了 RHN Push 之後,中央設定檔會安裝於
/etc/sysconfig/rhn/rhnpushrc
之中。此檔案包含了 表格 6.2, “rhnpush
選項” 中所有列出的選項之值。
這些特別的設定檔在分辨您的設定時,非常有用,這會根據
rhnpush
指令發出的目錄而定。在目前的目錄(./.rhnpushrc
)設定會蓋過使用者家目錄(~/.rhnpushrc
)的設定,同時會在中央設定檔(/etc/sysconfig/rhn/rhnpushrc
)被使用前使用。
舉例來說,您可以使用目前的目錄設定檔,來指定要散佈的軟體頻道、包括使用者名稱的家目錄設定檔、以及用來辨別伺服器以收到套件的中央設定檔。
表格 6.2, “
rhnpush
選項” 包含了所有 rhnpush
指令的指令列選項:
表格 6.2. rhnpush
選項
選項 | 描述 |
---|---|
-v --verbose | 增加顯示訊息,選項可以重複使用多次,意即 -vv 、-vvv 等等。 |
-d, --dir DIRECTORY | 從此目錄處理套件。 |
-c, --channel CHANNEL_LABEL | 指定收到套件的頻道。請注意這是必要的欄位,同時它與頻道的名稱不同。您可以將此 -c 重複使用,指定多個頻道(例如 -c=CHANNEL_ONE -c=CHANNEL_TWO )。 |
-n, --count N_HEADERS_PER_CALL | 每次呼叫時,處理這個數量的表頭。預設值是 25。 |
-l, --list | 僅列出特定頻道。 |
-r, --reldirRELATIVE_DIRECTORY | 將此相對目錄與每個檔案相關連。 |
-o, --orgidORGANIZATION_ID | 納入您組織的 ID 號碼。必須是整數。 |
-u , --username USERNAME | 包括使用者在 RHN 上的使用者名稱,該名稱對特定頻道擁有管理權限。如果沒有提供的話,rhnpush 會提示您輸入頻道管理者的使用者名稱。這使用者名稱與密碼會暫時存在 ~/.rhnpushcache 中,預設時間為五分鐘。請使用 --new-cache 選項,強迫使用新的使用者名稱與密碼。 |
-p , --password PASSWORD | 包括對特定頻道擁有管理權限的使用者的 RHN 密碼。如果沒有輸入的話,rhnpush 會提示您輸入頻道管理者的密碼。在一定時間內,使用者名稱與密碼會放在 ~/.rhnpushcache 快取中,預設值為五分鐘。請使用 --new-cache 選項來強迫使用新的使用者名稱與密碼。 |
-s, --stdin | 從標準輸入中,讀取套件清單。舉例來說,從 ls 指令而來的清單。 |
-X, --exclude GLOB | 排除與此表示式相符的套件。 |
--force | 強迫上傳套件,即使此套件的名稱與版本已經存在於頻道中。若無此選項,上傳一個既有的套件時,將會收到錯誤訊息。 |
--nosig | 即使套件沒有簽署,依舊繼續執行。 |
--new-cache | 強迫 RHN Push 丟棄快取中的使用者名稱與密碼,然後接受或詢問新的使用者名稱與密碼。這在您第一次輸入錯誤時,非常有用。 |
--newest | 只將更新的套件推送到伺服器上。請注意,原始碼套件檔是很特別的,因為其版本不會相比較。新舊與否取決於它們的相關二進位套件。使用 RHN Push 此選項與一個原始碼套件檔會上傳套件,但是原始套件並不會出現在 RHN 網站界面中,除非相關的二進位套件也上傳。請與 --source 互相比較。搭配使用 --source --newest 選項「會」以較新版本的套件更新獨立的原始套件,並且無須先上傳相聯的 binary 套件。 |
--header | 只上傳表頭。 |
--source | 上傳所指示的原始碼套件。作法是將其視為獨立套件,同時並「不」視為與另一個、之前就存在的二進位套件相互關聯的特別原始碼套件。舉例來說,您可以在想要把原始碼套件,散佈給自外於正規原始碼控制管理的程式設計師與測試人員時,就可以這樣用。 |
--server SERVER | 指定要將套件上傳至哪一台伺服器。目前,這需要 http://localhost/APP 的值。這是必要的參數。 |
--test | 只列出要推送套件的清單,實際上並不推送套件。 |
-h, --help | 簡單描述選項。 |
-?, --usage | 檢視使用摘要。 |
注意
這些指令列選項亦描述於
rhnpush
的 man page 中:man rhnpush
。
6.2.2. 使用 RHN Push 應用程式
注意
建議您在上傳前,至少建立一個私有頻道,以接收自訂套件,因為系統需要擁有頻道,才能取得套件。
以下指令會將套件的表頭上傳至 RHN Satellite Server,並將套件複製到 RHN Satellite Server 套件儲存地中:
rhnpush -c label_of_private_channelpkg-list
您可以覆寫您 RHN Push 設定檔中的設定,作法是在指令列中指定選項與值:
rhnpush -c label_of_private_channel --server localhost pkg-list
label_of_private_channel 是個建立來取得這些套件的自訂頻道。請確認您使用建立頻道時所設立的精確頻道標籤。如果您要指定一或多個頻道(透過
-c
或 --channel
),所上傳的套件表頭會與所有指定的頻道相連結。若您未指定頻道,套件將存在「套件管理」網頁中的「無頻道」一節中。有關於重新指定套件上的說明,請參閱 節 4.6, “將套件指定到軟體頻道中”。
--server
選項會指定要安裝套件的伺服器,這是必要的。RHN Push 可以安裝在外部系統上,但建議您在 RHN Satellite Server 上執行 RHN Push。
pkg-list
代表要上傳的套件清單。您也可以使用 -d
選項,指定包含套件的本機目錄,以加到頻道中。RHN Push 也能從標準輸入中讀取套件清單(使用 --stdin
)。
附錄 A. 修訂歷史
修訂記錄 | |||
---|---|---|---|
修訂 1-2.400 | 2013-10-31 | Rüdiger Landmann | |
| |||
修訂 1-2 | 2012-07-18 | Anthony Towns | |
| |||
修訂 1.0-0 | Fri Feb 27 2009 | ||
|
索引
符號
- 「已管理的頻道之詳細資訊」, 管理軟體頻道的詳細資訊
- 上傳套件, 上傳與維護自訂套件
- 何為
- RPM 的優點, RPM 的優點
- 勘誤警示
- 建立與編輯, 建立與編輯勘誤
- 管理, 自訂勘誤管理
- 管理公佈, 已公佈的勘誤
- 管理未公佈, 未公佈的勘誤
- 複製, 複製勘誤
- 套件
- Solaris 和 UNIX, 將套件上傳至 RHN Satellite Server
- 如何
- 傳遞非 RPM 的套件, 將套件上傳至 RHN Satellite Server
- 將套件上傳至 RHN Proxy Server, 上傳套件至 RHN Proxy Server
- 將遺失的套件複製至 Satellite, 設定與使用 RHN Package Manager
- 建立自訂套件, 為 Red Hat Network 建立套件
- 擷取頻道套件清單, 設定與使用 RHN Package Manager
- 產生一組 GnuPG 金鑰, 產生 GnuPG 金鑰配對
- 複製頻道, 複製軟體頻道
- 配置 RHN Package Manager, 設定與使用 RHN Package Manager
- 配置 RHN Push, 設定 RHN Push 應用程式
- 已管理的軟體頻道
- 詳細資訊, 管理軟體頻道的詳細資訊
- 管理勘誤
- 檢視詳細資料, 管理勘誤的詳細資料
- 網站
- 已管理的軟體頻道, 管理軟體頻道的詳細資訊
- 自訂套件, 建立自訂套件
- 上傳至 RHN Proxy Server, 上傳套件至 RHN Proxy Server
- 上傳至 RHN Satellite Server, 將套件上傳至 RHN Satellite Server
- 建立, 為 Red Hat Network 建立套件
- 指南, RHN RPM 方針
- 簽署, 簽署套件
- 軟體
- 頻道管理, 管理軟體頻道的詳細資訊
- 頻道
- 刪除, 刪除軟體頻道
- 簡介, RHN 頻道簡介
- 複製, 複製軟體頻道
G
- GnuPG 金鑰
- 以...簽署套件, 簽署套件
- 建立, 產生 GnuPG 金鑰配對
- gpg 金鑰, 產生 GnuPG 金鑰配對
R
- RHN Package Manager, 上傳套件至 RHN Proxy Server
- rhn_package_manager, 設定與使用 RHN Package Manager
- 上傳套件表頭, 設定與使用 RHN Package Manager
- 安裝, 上傳套件至 RHN Proxy Server
- 將遺失的套件複製至 Satellite, 設定與使用 RHN Package Manager
- 擷取頻道套件清單, 設定與使用 RHN Package Manager
- 配置, 設定與使用 RHN Package Manager
- 配置檔案, 設定與使用 RHN Package Manager
- 頻道,指定, 設定與使用 RHN Package Manager
- 驗證本機套件清單, 設定與使用 RHN Package Manager
- RHN Push
- 使用, 使用 RHN Push 應用程式
- 安裝, 將套件上傳至 RHN Satellite Server
- 配置, 設定 RHN Push 應用程式
- 頻道,指定, 使用 RHN Push 應用程式
- rhn_package_manager, 設定與使用 RHN Package Manager
- (另參見 RHN Package Manager)
- 指令列選項, 設定與使用 RHN Package Manager
- rhn_package_manager.conf, 設定與使用 RHN Package Manager
- RPM
- 優點, RPM 的優點
- RPM 套件管理程式 (參見 RPM)
法律聲明
Copyright © 2010 Red Hat, Inc.
This document is licensed by Red Hat under the Creative Commons Attribution-ShareAlike 3.0 Unported License. If you distribute this document, or a modified version of it, you must provide attribution to Red Hat, Inc. and provide a link to the original. If the document is modified, all Red Hat trademarks must be removed.
Red Hat, as the licensor of this document, waives the right to enforce, and agrees not to assert, Section 4d of CC-BY-SA to the fullest extent permitted by applicable law.
Red Hat, Red Hat Enterprise Linux, the Shadowman logo, JBoss, OpenShift, Fedora, the Infinity logo, and RHCE are trademarks of Red Hat, Inc., registered in the United States and other countries.
Linux® is the registered trademark of Linus Torvalds in the United States and other countries.
Java® is a registered trademark of Oracle and/or its affiliates.
XFS® is a trademark of Silicon Graphics International Corp. or its subsidiaries in the United States and/or other countries.
MySQL® is a registered trademark of MySQL AB in the United States, the European Union and other countries.
Node.js® is an official trademark of Joyent. Red Hat Software Collections is not formally related to or endorsed by the official Joyent Node.js open source or commercial project.
The OpenStack® Word Mark and OpenStack logo are either registered trademarks/service marks or trademarks/service marks of the OpenStack Foundation, in the United States and other countries and are used with the OpenStack Foundation's permission. We are not affiliated with, endorsed or sponsored by the OpenStack Foundation, or the OpenStack community.
All other trademarks are the property of their respective owners.