Debian、Ubuntu安装源配置文件说明

源列表主文件 /etc/apt/sources.list,兼取 /etc/apt/sources.list.d/*,结果以并集论。 源列表文件以行为单位,每行分多个字段,字段间以空白符分隔。井号(#)开头为注释行。样例如下:

安装源配置样例(Debian 8 jessie):

deb http://ftp.tw.debian.org/debian/ jessie main contrib non-free
deb http://ftp.tw.debian.org/debian/ jessie-updates main contrib non-free
deb http://ftp.tw.debian.org/debian/ jessie-backports main contrib non-free
deb http://security.debian.org/ jessie/updates main contrib non-free
deb http://ftp.yzu.edu.tw/Linux/debian-multimedia/ jessie main non-free

#deb http://ftp.cn.debian.org/debian/ jessie main contrib non-free
#deb http://ftp.cn.debian.org/debian/ jessie-updates main contrib non-free
#deb http://ftp.cn.debian.org/debian/ jessie-backports main contrib non-free
#deb http://ftp.cn.debian.org/debian-security/ jessie/updates main contrib non-free
#deb http://ftp.cn.debian.org/debian-multimedia/ jessie main non-free

各字段说明

第一字段,指示包类型。 取值仅「deb」「deb-src」两个,分别对应二进制包和源码包。通常仅二进制包有用。

第二字段,指示镜像站点,即「源」! URL 定位到某个目录,该目录下必有「dists」「pool」两个子目录。如:http://ftp.cn.debian.org/debian/http://ftp.sjtu.edu.cn/ubuntu/

(adsbygoogle = window.adsbygoogle || []).push({});

第三字段,指示包的「版本类型」,姑且称为「仓库」。 打开某源,进入「dists」子目录可见该源中有哪些仓库,即其下诸子目录。 命名形式为「系统发行版名-仓库名」,如 Debian 的「jessie-backports」「stretch-updates」,Ubuntu 的「vivid-updates」「wily-proposed」。无仓库名的即为主仓库。 Debian 的 stable、testing 为链接,指向具体系统发行版,会随时间而变。比如,当前 stable 为 jessie,所以 stable-backports 与 jessie-backports 等效。但本人不建义使用 stable、testing,因为下一个 stable 发布后,你的源便自动指向了一个新版本,然而你并未阅读新版本的发行说明,并未做好升级的准备。

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」,本身是自由软件,且所有依赖的包也都是自由软件,此类可称纯自由软件,见 https://www.debian.org/distrib/packages《Debian自由软件指导方针》。 「contrib」,本身是自由软件,但依赖不纯,即依赖中至少有一例 contrib 或 non-free 者。 「non-free」,本身并非自由软件,无论依赖如何。当然,该软件是可免费使用或试用的。免费一例 https://packages.debian.org/jessie/unrar,试用xx天一例 https://packages.debian.org/jessie/rar

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

最后忠告:不要同时启用多个源,同一仓库的源启用一个即可,否则容易引起混乱。以下实例便是列有多套而仅启用一套。

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏FreeBuf

扒一扒浏览器的安全机制

*本文原创作者:梅孜,本文属FreeBuf原创奖励计划,未经许可禁止转载 随着互联网深入人们的生活,浏览器的发展更加丰富多彩,其种类多样,版本更新速度也日益提...

24490
来自专栏腾讯移动品质中心TMQ的专栏

流量都去哪儿了 —— 三板斧搞定Android网络流量测试

流量是什么? 为什么要进行流量测试? 流量测试方法有哪些? 怎么统计流量并进行结果分析? 带着这些疑问,小编带您探寻Android网络流量的测试方法。 1 ...

60760
来自专栏原创

五个最佳案例带你解读Node.js的前后之道

Node.js 是什么? Node.js采用C++语言编写而成,浏览器内核V8做为执行引擎;Node不是JS应用、而是一个Javascript的运行环境。Nod...

421100
来自专栏后端技术探索

另一篇mysql防止库存超卖

今天王总又给我们上了一课,其实MySQL处理高并发,防止库存超卖的问题,在去年的时候,王总已经提过;但是很可惜,即使当时大家都听懂了,但是在现实开发中,还是没这...

22210
来自专栏程序员互动联盟

编程高手为啥都喜欢耍脚本?

脚本编程几乎在每一个平台上都存在,这是因为利用脚本常常会简化、加快很多批量处理的工作,它能实现很多传统编程语言的功能,但是对编写者却不需要关心什么编译器、解释器...

36750
来自专栏带你撸出一手好代码

神奇的Java

使用java开发一个socket服务器,使用protocol buffer作为和客户端通信的数据格式。然后,问题就来了,这个socket服务器要如何调试?换句话...

13120
来自专栏Python中文社区

开源项目Trip: 给Requests加上协程

專 欄 ❈LittleCoder,维护微信个人号python接口:http://itchat.readthedocs.io狂热bbt粉丝,业余写玩具。 Git...

25680
来自专栏技术换美食换不换

picu后端架构总结

首先我们项目的定位是一个图片,音频为主体的分享应用,于是服务器对于大资源的存储有了常规数据库,nginx静态资源存储和对象存储服务的选型问题.常规数据库(如my...

15620
来自专栏喵了个咪的博客空间

PhalGo-介绍

PhalGo-介绍 phalgo是一个Go语言的一体化开发框架,主要用于API开发应为使用ECHO框架作为http服务web程序一样可以使用,牛顿曾经说过"如果...

32260
来自专栏小白课代表

重大更新!全新的百度网盘下载器 PanDownload v2.0.1 来了!(附全新介绍)

时隔半年,最早的最稳定的知名度最高的流传范围最广的百度网盘下载器,PanDownload 终于迎来重大更新!

50840

扫码关注云+社区

领取腾讯云代金券