如何為 CentOS 建立公用鏡像
CentOS 歡迎新的鏡像。
如果你正在考慮為 CentOS 建立一個公開鏡像,請參考下列指引,以確保你的鏡像與其它鏡像的一致性。
首先,請訂閱下列郵件列表﹕
CentOS-mirror 郵件列表: http://lists.centos.org/mailman/listinfo/CentOS-mirror (你可在此張貼及公佈你的公用鏡像)
CentOS-mirror-announce 郵件列表: http://lists.centos.org/mailman/listinfo/centos-mirror-announce (低流量、受監管的列表,供 CentOS 小組向 CentOS 公用鏡像的管理員發佈消息用)
有關儲存空間的需求,請參考 http://mirror.centos.org/ 根目錄的 dir_sizes 檔。請留意當推出定點發行時(例如 6.8 -> 6.9)新舊版發行本會有數個星期共存在鏡像上。400 GB 的儲存空間應該足夠未來數年的需求。
當你進行初次同步時,請採用一個支援 rsync 存取的外部鏡像。這裡有一個清單:http://centos.org/download/mirrors/
你亦應該建立一個 cron 的工作定時從該外部鏡像進行同步。當你已核實鏡像能正確地同步,而且你的鏡像 URL 能運作,請將鏡像的資料郵寄到郵件列表。當我們核實你的鏡像乎合我們的須求,我們會將你加入鏡像的清單內,而你亦能改用 rsync://msync.centos.org/CentOS/ 進行同步。
在遞交鏡像前,像應該在所屬機構外檢查所有 URL 均能正常運作。防火牆的問題是出乎意外地常見。假若你的鏡像有 IPv6 位址,你應該個別測試 IPv4 及 IPv6。curl 及 rsync 提供 -4 及 -6 選項供選取通訊協議之用。
當你所遞交鏡像時,請提供所有相關的 URL(http/https/rsync),以及你每隔多久進行同步。請包括你所身處的城市/省份/國家,以及你的頻寬(速度)。另外請提供一個名稱及指向贊助機構的連結,好讓我們能作出恰當的鳴謝。假若你用來訂閱郵件列表的電郵地址並不是鏡像的最佳聯絡點,請亦提供你首選的聯絡電郵地址。
當你郵寄到 centos-mirror 列表時可採用以下範本。請注意你必須訂閱該列表才能發放訊息。來自非訂閱用戶的訊息會被棄掉。
HTTP: http://your.domain.com/centos/ HTTPS: https://your.domain.com/centos/ (if you provide https access) RSYNC: rsync://your.domain.com/centos/ (if you provide rsync access) Sync schedule: Every x hrs Bandwidth: Location: (For U.S. and Canada: also mention the state/province) Sponsor: Sponsor URL: IPv4 address to authorize: IPv6 address to authorize: Email contact: (where we'll send notifications for issues with your mirror) Mirroring AltArch: yes/no (and if so, let us know the URLs, as those will be different from your http/https/rsync paths for CentOS)
我們現時只專注在 HTTP 及 RSYNC 鏡像。我們已不再接納新鏡像的 FTP 連結。鏡像暫時不採用 HTTPS,但我們已開始收集 HTTPS 連結以備日後加進清單內。要是你設置 HTTPS,請勿把 HTTP 轉接至 HTTPS。有些機構允許對外的 HTTP 連線卻拒絕 HTTPS 連線,任何轉接會為他們帶來問題。
公開鏡像應該每日透過 cron 進行約 6 次的同步。我們強烈建議你在 cron 腳本中採用鎖定檔案來避免繁衍多重連線,因為這樣加重我們的伺服器及你的鏡像的負荷。若果你不懂怎樣做,請在郵件列表上發問。
當你的伺服器已被加進鏡像資料庫,而且你的 IP 已獲認可,從 centos.org 機器更新你的鏡像的最佳方法是運用以下腳本(參考之用):
rsync -aqzH --delete msync.centos.org::CentOS /path/to/local/mirror/root
其實用戶可以針對兩個 rsync 目標/模組進行同步:
- ::CentOS:當中含有傳統 CentOS linux 的 x86_64 及 i386 發行版本和更新
::altarch:當中含有 CentOS AltArch 特別興趣小組 所建立及維護的其它平台:aarch64、armhfp、i386、power9、ppc64、ppc64le
要是你設立 AltArch 的鏡像,你必須把 CentOS 及 altarch 的內容放進不同的目錄,例如 /var/www/html/centos 和 /var/www/html/centos-altarch。你不可能以同一個目錄收藏 CentOS 及 AltArch 的內容。altarch 的 rsync 目標並不包含 CentOS,它 只 包含替代架構的內容。
註:
msync.centos.org 會自動由我們的 GeoIP DNS 解析。這意味著你會被指向你所在國家/大陸的節點,或最近的伺服器
提示: 如果你使用 >= 2.6.4 版的 rsync,你可考慮在你的 cron 工作內為上述一行加入 --delay-updates 這個選項
註: 如果你的數據容量低於 15 TB(視乎地區),請不要嘗試把該台機器加進鏡像清單內。此外請留意:假若你所在的國家已經有很多鏡像(如大部份西方國家,及某些亞洲國家),請避免加入少於 100Mbit/s 的鏡站。當然,要是你的國內鏡像不多,我們亦接受較低的速度。
請將任何有關伺服器的改動,例如:位置、聯絡電郵、連結、賛助商、IP 位址等,通告 CentOS-mirror 郵件列表。
請留意美國的出口管制法例禁止輸出 CentOS 軟件到某些國家,因此我們無法增設來自那些國家的鏡像。現有的受管制國家清單可見於 CentOS 法律資訊 頁法的首個段落。
要是你有任何疑問,我們亦守候在 Freenode 的 #centos-mirror IRC 頻道。請繼續利用郵件列表遞交新增及更改鏡像的請求,以便我們能保留記錄。
Translation of revision 31