概述:
本文是在逛論壇是的發現,借鑒過來,以便學習。
源列表主文件 /etc/apt/sources.list
同時也可創建獨立的源配置文件到 /etc/apt/sources.list.d/* 下
sources.list 文件格式說明
源列表文件以行為單位,每行分多個字段,字段間以空白符分隔。井號(#)開頭為注釋行
-
第一字段,指示包類型
可選值為[deb] [deb-src]兩個,分別對應二進制包和源碼包。通常僅二進制包有用。
-
第二字段,指示鏡像站點,即源的URL
URL 定位到某個目錄,該目錄下必有[dists] [pool]兩個子目錄。
-
第三字段,指示倉庫
打開某源,進入[dists]目錄,里面的每個子目錄都可以理解為一個倉庫。
命名形式為「系統發行版名-倉庫名」,如 Debian 的[jessie-backports] [jessie-updates]。[stable、testing 為鏈接,指向具體系統發行版,會隨時間而變]。
Debian 的倉庫自 squeeze 起與 Ubuntu 基本相同。除主倉庫外,有:
[security],Ubuntu 用於指安全性更新。即影響系統安全的 bug 修補。Debian 特殊一些,見下文。
[updates],非安全性更新。即不影響到系統安全的 bug 修補。
[proposed-updates],預更新。小 beta 版。過后會進入[updates]或[security]。Ubuntu 僅用[proposed],無后綴[updates]。
[backports],后備。Debian stable 發布后,Ubuntu 某版本正式發布后,其所有軟件版本號便已被凍結,所有軟件只修 bug,不增加任何特性。但有人可能需要新特性,甚至某些較新的軟件原來根本就沒有。該倉庫正因此而設,但欠官方維護,且可能在系統正式發布之后過一段時間才有內容。此倉庫處於第二優先順序,而上述幾個倉庫處於第一優先順序。安裝第二優先順序的包必須特別指明,見 apt-get(8) aptitude(8) 的 --target-release 選項。
提示:並非所有版本都設有上述全部倉庫,請打開源中 dists 目錄查看。
-
后續字段,指示包許可類型
后續字段排名不分先后,最終結果取其並集。
按包本身的許可及所直接依賴的包的許可划分。打開某倉庫,可見幾個子目錄。
Debian 最多有三種
[main],本身是自由軟件,且所有依賴的包也都是自由軟件,此類可稱純自由軟件。
[contrib],本身是自由軟件,但依賴不純,即依賴中至少有一例 contrib 或 non-free 者。
[non-free],本身並非自由軟件,無論依賴如何。
Ubuntu 最多有四種
[main],官方維護的自由軟件。
[universe],社區維護的自由軟件。
[restricted],設備專有驅動。
[multiverse],同 Debian 的[non-free]。
某些另類的第三方源,未必遵循上述慣例。總之,打開倉庫目錄自己看。
特別之處
Debian 安全性更新不像 Ubuntu 放在[security]倉庫,而是放在單獨一個源中。各大鏡像站通常都把一般的包放在根下來一級的[debian]目錄中,而安全性更新則會放在[debian-security]目錄中,如果有的話,如 http://ftp.cn.debian.org/debian-security/ 。
Debian 官方建議,所有安全性更新,只從官方主站更新,勿使用其它鏡像站,除非你對鏡像站非常有信心,見 https://www.debian.org/security/index.en.html 。所以,很多鏡像站並不提供安全更新源。
安全性更新的第三字段形式固定為[版本名/updates],如[wheezy/updates] [jessie/updates]。
Debian 多媒體源
一些多媒體軟件因牽涉到版權問題,包括硬件解碼器,Debian 官方並未收錄,有一網站專門填補該空缺,見 http://www.deb-multimedia.org。
最后忠告
不要同時啟用多個源,同一倉庫的源啟用一個即可,否則容易引起混亂。以下實例便是列有多套而僅啟用一套.