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

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

源列表主文件 /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/

第三字段,指示包的「版本类型」,姑且称为「仓库」。
打开某源,进入「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

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


原文发布时间:2011-07-29
本文来自云栖社区合作伙伴“ Debian社区”,了解相关信息可以关注“ Debian社区”。
相关文章
|
6天前
|
Ubuntu Python
Ubuntu 安装Python3.8
Ubuntu 安装Python3.8
33 0
|
20小时前
|
Ubuntu NoSQL 数据安全/隐私保护
如何在在虚拟机中安装Ubuntu
如何在在虚拟机中安装Ubuntu
5 0
|
3天前
|
安全 Linux 定位技术
Debian安装和基本使用
Debian安装和基本使用
7 0
|
4天前
|
Ubuntu Unix Linux
在Ubuntu安装RPM文件
Ubuntu使用`apt`和`alien`工具安装软件。`deb`是Ubuntu的标准包格式,但通过`alien`可转换及安装`RPM`包。首先确保启用`Universe`源,然后安装`alien`。转换RPM包为DEB包,运行`sudo alien package_name.rpm`,接着用`sudo apt install package_name.deb`安装。直接安装RPM包可使用`sudo alien -i package_name.rpm`,但这种方法不推荐,可能导致依赖性冲突和系统不稳定。
25 10
|
4天前
|
Ubuntu
ubuntu软件包安装
ubuntu软件包安装
12 1
|
6天前
|
分布式计算 Ubuntu Java
PySpark安装及WordCount实现(基于Ubuntu)
现在,你已经成功安装了PySpark并实现了WordCount示例。你可以根据实际需求修改脚本以处理不同的文本数据。
10 0
|
8天前
|
Ubuntu 应用服务中间件 nginx
ubuntu编译安装nginx及安装nginx_upstream_check_module模块
以上是编译安装Nginx和安装 `nginx_upstream_check_module`模块的基本步骤。根据你的需求和环境,你可能需要进一步配置Nginx以满足特定的要求。
19 3
|
10天前
|
资源调度 JavaScript Ubuntu
Yarn介绍及快速安装Debian/Ubuntu Linux
现在,你已经成功安装了Yarn,可以在你的JavaScript项目中使用它来管理依赖。
49 3
|
10天前
|
Ubuntu
Ubuntu20.04安装SNMP服务
至此,你已经成功在Ubuntu 20.04上安装了SNMP服务。你可以使用SNMP工具来监视和管理你的系统,或者将其集成到网络管理系统中。
26 3
|
13天前
|
SQL 关系型数据库 数据库
如何在 Debian 12 上安装 PostgreSQL?
【4月更文挑战第25天】
29 0