sources.list - 了解 Debian 中的語法和結構
我從http://debgen.simplylinux.ch/生成了一個帶有以下參數的 sources.list 文件:
- 國家:紐西蘭
- 發布:穩定(Wheezy)
- 架構:64 位
- 資料來源:主要 + 安全 + 更新
- 包含源碼包:否
我得到的輸出是:
deb http://ftp.nz.debian.org/debian stable main deb http://ftp.debian.org/debian/ wheezy-updates main deb http://security.debian.org/ wheezy/updates main
我的問題是:
- 觀察: “基本”源(第 1 行)指向我的本地儲存庫(紐西蘭),但 wheezy-updates 源(第 2 行)指向主記憶體儲庫(美國?)。
**問題:**它們不能都指向我的本地(紐西蘭)儲存庫有什麼好的理由嗎?我可以假設的可能原因是 NZ 儲存庫不包含 wheezy-updates,或者主記憶體儲庫比 NZ 鏡像更早地發布它們。 2. **觀察:**第 2 行中的行 URL 以斜杠結尾,而第 1 行中的 URL 則沒有。
**問題:**對於第 1 行或第 2 行,尾隨斜杠是必需的還是重要的? 3. **觀察:**行的順序是:
- 基礎安裝源
- 基本更新源(我的理解是這曾經被稱為 volatile 嗎?)
- 安全更新源**問題:**行的順序真的那麼重要嗎?我在這裡讀到:
“按優先順序列出來源很重要,首先列出最喜歡的來源。通常這將導致按速度從最快到最慢排序(CD-ROM 其次是本地網路上的主機,其次是遠端 Internet 主機,例如)。”
但是,我會認為安全更新更重要,所以會進入第 1 行。或者這真的不是什麼大問題?
- 顯然,是腳本生成器的錯誤配置,紐西蘭伺服器有 wheezy-updates:
http://ftp.nz.debian.org/debian/dists/wheezy-updates/
由於是一個錯誤,因此您的下一個問題也將得到解答。 2. 如果我不得不猜測,這(也許)與第一個問題有關。但是,IMO,apt 總是添加一個斜杠
/
。伺服器不會嘮叨它//
=/
。 3. 這僅適用於共享相同名稱和版本的包。例如,您的公司建構了一些優化的軟體包(它們的原始碼完好無損),實際上不應該做任何新版本。您只需將您的公司儲存庫添加到頂部,當您想要安裝該軟體包時,它更喜歡您的公司伺服器。對於版本,APT 將始終選擇可用的更高版本。所以,你可以留
security
到最後,那裡的包比main
和/或更新updates
。APT 將更喜歡更高版本,即updates
或security
。
我知道這個問答已經過時了,但是 FWIW 對您最近的鏡像進行硬編碼以希望獲得盡可能快的性能不再具有任何實際價值。
如果您使用http://httpredir.debian.org/debian作為 repo URL,它會自動將您定向到最適合您的鏡像(不一定是地理位置最近的鏡像)。
這樣做的好處是,如果一個新的更好的鏡像上線,您將自動使用它和/或如果您的本地鏡像離線,您將不需要更新您的 sources.list!
請參閱http://httpredir.debian.org/了解完整詳情。
請注意,您仍然需要使用 security.debian.org 進行安全更新!