在 SLES 15 上使用 RMT 建置本地 SUSE 更新伺服器

對於新的本機 SUSE 訂閱和更新伺服器,請在支援的 SLES 15 主機上安裝儲存庫鏡像工具 (RMT),使用 YaST 進行配置,啟用貴組織使用的產品,並鏡像其儲存庫。在將生產系統導向到該伺服器之前,請透過伺服器的 HTTPS URL 註冊測試用戶端。 RMT 取代了 SLES 15 的 SMT;舊版 SMT 安裝並非新部署的合適起點。

這種設計適用於這樣一種環境:一台伺服器連接到 SUSE 用戶中心 (SCC),其他 SUSE 系統則透過本地端點接收註冊資訊和軟體套件。它可以減少重複的外部下載,但並不提供訂閱權限:仍需要有效的組織訂閱和 SCC 鏡像憑證。

確認平台並規劃伺服器

SLES 15 SP7 儲存庫鏡像工具指南指出,RMT 支援 SLES 12 及更高版本的用戶端,但不支援 SLES 11 及更早版本。 RMT 與 SMT 在暫存和報告等功能上也存在差異。遷移應視為服務變更,而非就地軟體包更新;SUSE 建議從 SMT 遷移時,在新 SLES 15 主機上安裝 RMT。

分配一個穩定的完整網域名稱 (FQDN),例如 `example.com` rmt.example.com,以及一個靜態位址。確保 DNS 解析穩定,並且主機可以透過出站連接埠 80 和 443 存取 SCC 和 SUSE 更新服務。客戶端需要透過 HTTPS 協定存取 RMT 服務。客戶端 URL 和伺服器憑證中應使用相同的 FQDN。

根據您要鏡像的版本、架構、產品和儲存庫來規劃儲存空間。 SUSE SP7 指南給出了一個大致的估算值:已啟用儲存庫的總大小約為 1.5 倍,每個 SLES 版本(包括擴充功能)大約需要 200 GB 的空間。這只是一個估算值,並非容量保證;請檢查目前儲存庫的大小並預留成長空間。 RMT 也會向目標位置寫入大型臨時文件/tmp,因此請確保檔案系統有足夠的可用空間。請勿將相同主機設定為 SLES 安裝伺服器:RMT 會在 80 連接埠上設定 NGINX,而安裝伺服器角色會在該連接埠上設定 Apache。

安裝 RMT 軟體套件並設定 YaST

在已更新並註冊的 SLES 15 伺服器上,安裝 RMT:

sudo zypper patch
sudo zypper in rmt-server

檢查軟體包變更並完成安裝。啟動初始配置:

sudo yast2 rmt

輸入用於儲存庫鏡像的 SCC 組織憑證。這些憑證是組織在 SUSE Customer Center 中的代理憑證,而不是客戶端註冊碼。建立精靈請求的 MariaDB 資料庫和使用者。將憑證通用名稱設定為伺服器的 FQDN,並新增客戶端將使用的任何其他名稱作為備用名稱。如果啟用了 firewalld,請選擇所需的 RMT 規則,並在可行的情況下將其作用域限定到伺服器的相關網路介面。完成精靈;YaST 將啟用並啟動所需的服務和計時器。

YaST 將 RMT CA 憑證儲存在 `<path>` /etc/rmt/ssl/rmt-ca.crt,伺服器憑證和金鑰儲存在 `<path>` /etc/rmt/ssl/。請保護好私鑰。使用您已批准的流程分發 CA 的信任。即使伺服器透過 HTTPS 回應,如果其憑證名稱與要求的主機名稱不符或其 CA 不受信任,客戶端註冊仍然可能失敗。

同步元資料、啟用產品並鏡像

從SCC更新本地產品目錄並檢查可用產品:

sudo rmt-cli sync
sudo rmt-cli products list --all

透過輸出中顯示的 ID 或產品字串啟用產品。產品字串因版本和架構而異,因此請使用您伺服器上的值,而不是複製猜測的識別碼:

sudo rmt-cli products enable PRODUCT_STRING
sudo rmt-cli products list

啟用產品會選擇其關聯的儲存庫。請將選擇範圍限制在您計劃支援的系統:每增加一個版本和架構都會佔用儲存空間並增加同步工作。使用以下命令開始初始軟體包下載:

sudo rmt-cli mirror

初始鏡像可能需要相當長的時間。 RMT 通常使用 systemd 定時器來排程元資料同步和倉庫鏡像。請檢查這兩個定時器是否都已啟動:

systemctl status rmt-server-sync.timer
systemctl status rmt-server-mirror.timer

使用rmt-cli products list以下rmt-cli repos list命令確認目標條目已啟用並顯示最近的鏡像活動。如果缺少儲存庫,請/tmp在重複重新啟動服務之前檢查 SCC 憑證、訂閱權限、出站連線、磁碟空間(包括磁碟空間)以及命令輸出。

註冊測試客戶端並驗證更新

在 SLES 12 或更高版本的測試系統上,將 SUSEConnect 指向 RMT 伺服器:

sudo SUSEConnect --url https://rmt.example.com

請替換為您實際的 FQDN,並確保它包含在憑證中。如果用戶端提示信任 RMT CA,請在接受憑證之前,透過您組織認可的管道驗證憑證。不要透過停用證書檢查來解決名稱不符的問題。然後檢查已配置的儲存庫並刷新元資料:

sudo zypper lr -u
sudo zypper refresh

成功結果顯示預期的 RMT 支援的儲存庫已啟用,且元資料刷新已完成。在伺服器上,確認客戶端已出現在清單中sudo rmt-cli systems list。如果註冊失敗,請檢查 DNS 和路由、HTTPS 可及性、憑證信任和主機名稱相符、防火牆範圍,以及產品是否已啟用和鏡像。在變更共享配置之前,請查看命令輸出和服務日誌。

SLES 終端機顯示了用於安裝 RMT 伺服器軟體包的 zypper 命令。
在準備好的 SLES 15 主機上安裝 RMT 軟體包。

YaST RMT 設定摘要,包括組織憑證、MariaDB、伺服器憑證和防火牆部分
在套用 YaST 設定之前,請檢查 SCC、資料庫、FQDN 憑證和防火牆設定。

用於同步 RMT 元資料和列出可用產品的終端命令
刷新產品目錄並檢查可用於鏡像的產品字串。

用於鏡像 RMT 儲存庫和向 SUSEConnect 註冊 SLES 用戶端的終端命令
啟動儲存庫鏡像,並使用伺服器的 HTTPS 主機名稱註冊測試用戶端。

了解自己的限制,必要時選擇另一條路。

如果您需要 RMT 不提供的功能,例如更全面的用戶端管理、報告或分階段內容工作流程,請使用 SUSE Multi-Linux Manager 或其他支援的生命週期管理服務。僅在仍需要舊版 SLES 11 用戶端或 SMT 特定行為的情況下才保留 SMT,並單獨測試遷移。實體隔離網路需要資料傳輸工作流程:SUSE 文件中提供了 RMT 匯出和匯入命令,用於使用可移動儲存裝置移動儲存庫資料和元資料。 RMT 只能鏡像組織訂閱中可用的產品。

SLES 15 SP7 的官方文件: RMT 安裝與設定;儲存庫鏡像工具指南;從 SMT 遷移到 RMT。

留下評論

使用 Systemd 定時器可靠地執行 ownCloud 後台作業

將按需作業運行替換為 systemd 定時器,該定時器每 15 分鐘執行一次 ownCloud 支援的 occ system:cron 命令。

透過尋找故障路由來恢復 ownCloud WebDAV 同步

透過 Apache、Nginx 或反向代理程式追蹤 WebDAV 請求,然後使用經過驗證的 PROPFIND 測試確認 ownCloud 同步功能正常。

設定 Nextcloud 的公共 URL,以便它可以存取自身。

透過設定其規範 URL 並從伺服器本身檢查 DNS、HTTPS 和反向代理路由,修復 Nextcloud 缺少出站位址警告的問題。

在 Ubuntu 24.04 上設定 Nextcloud Redis 快取

在 Ubuntu 24.04 上設定 Nextcloud Redis 快取

透過本機 Unix 套接字配置 APCu 和 Redis,以實現 Nextcloud 快取和檔案鎖定,並提供目前和舊版 Nextcloud 的步驟。

使用 Systemd 定時器自動執行 Nextcloud Cron

檢查 Nextcloud 的 cron 模式,修復其 systemd 服務和計時器,並驗證後台作業在啟動後以及每隔五分鐘運行一次。

使用 Redis 清除 Nextcloud 的檔案鎖定警告

啟用可靠的 Nextcloud 檔案鎖定,選擇適當的 Redis 或 Valkey 後端,並驗證警告是否清除,同時避免並發檔案變更的風險。

如何才能獲得 Nextcloud A+ 安全評級

如何才能獲得 Nextcloud A+ 安全評級

使用最新更新、HTTPS 和 HSTS、精確的反向代理信任以及針對公共伺服器的檢查,修復 Nextcloud 掃描中常見的錯誤。

啟用 Nextcloud 伺服器端加密,並評估其影響

為需要加密的儲存配置 Nextcloud SSE,保護加密金鑰,並在加密現有文件之前測量傳輸和 CPU 影響。

將 Elasticsearch 全文搜尋功能新增至 Nextcloud

將 Nextcloud 的檔案搜尋連接到 Elasticsearch,索引文件內容,並選擇適合您的伺服器和安全需求的設定。

為 Nextcloud 已刪除檔案設定可靠的過期策略

為 Nextcloud 已刪除檔案設定可靠的過期策略

配置 Nextcloud 在規定的保留期後刪除已刪除的文件,可靠地安排後台作業,並避免執行清除所有使用者回收站的命令。