1. 客户端 /etc/apt/sources.list 配置文件

/etc/apt/sources.list 是 debian/ubuntu 系统用来指定软件源的文件,它的基本格式为:

deb uri distribution [component1] [component2] […]
deb-src uri distribution [component1] [component2] […]

1.1. deb/deb-src

deb 关键词指明二进制包的位置,deb-src 则是源码包。

每个档案可以有 deb 或者 deb-src,或者兼而有之,但是两者必须分开声明。

1.2. uri

软件包的根目录 $ARCHIVE_ROOT (root of the archive),由 协议://URL/PATH 组成,比如 http://mirrors.163.com/debian/

debian/这个目录没有特殊规定,可以是任意的文件夹,也取决于构建软件源时执行命令位置和参数。

常用的 uri 类型:

  • cdrom: cdrom:[description_of_cd]/
  • ftp: ftp://ftp.domain.ext/path/to/repository
  • http: http://www.domain.ext/path/to/repository
  • smb: smb://path/to/repository
  • nfs: file://path/to/local/directory

1.3. distribution

系统的发行版。

一般 $ARCHIVE_ROOT/dists 下面的子文件夹,可以使用嵌套的文件夹,比如 other/ubuntu。发行版对应 Release 文件里的套件 (suite) 或者代号 (codename)。

debian 体系的发行版本:

  • Debian13-Trixie
  • Debian12-Bookworm
  • Debian11-Bullseye
  • Debian10-Buster
  • Debian9-Stretch
  • Debian8-Jessie
  • Debian7-Wheezy
  • Debian6.0-Squeeze
  • Debian5.0-Lenny
  • Debian4.0-Etch
  • Debian3.1-Sarge
  • Debian3.0-Woody
  • Debian2.2-Potato
  • Debian2.1-Slink
  • Debian2.0-Hamm
  • Debian1.3-Bo
  • Debian1.2-Rex
  • Debian1.1-Buzz

Ubuntu 系统的发行版本:

  • Ubuntu20.10-Groovy
  • Ubuntu20.04-Focal
  • Ubuntu19.10-Eoan
  • Ubuntu19.04-Disco
  • Ubuntu18.10-Cosmic
  • Ubuntu18.04-Bionic
  • Ubuntu17.10-Artful
  • Ubuntu17.04-Zesty
  • Ubuntu16.10-Yakkety
  • Ubuntu16.04-Xenial
  • Ubuntu15.10-Wily
  • Ubuntu15.04-Vivid
  • Ubuntu14.10-Utopic
  • Ubuntu14.04-Trusty
  • Ubuntu13.10-Saucy
  • Ubuntu13.04-Raring
  • Ubuntu12.04-Precise
  • Ubuntu11.10-Oneiric
  • Ubuntu11.04-Natty
  • Ubuntu10.10-Maverick
  • Ubuntu10.04-Lucid

每个版本有 stable、testing、unstable、oldstable 表示软件包稳定程度:

  • oldstable: 顾名思义,就是以前的稳定发行版了,如 oldstable 中 Debian6.0.8 目录的一个链接,两者内容完全一致。
  • stable: 是指现在的稳定发行版,对于每个 debian 来说,每个稳定发行版都会有一个代号,如 debian 6 叫做 squeeze,debian 7 叫做 wheezy。
  • testing: 指目前还暂时处于测试阶段的 debian 发行版,如 wheezy 往下发展就是 jessie 了,所以 testing 代指的就是 jessie 目录,它是 jessie 的一个链接。
  • unstable: 那就是不稳定版本了,其实它还有一个代号:sid,我们知道 debian 的发行版本名称大都来自玩具总动员中的角色名称,而 sid 就是那个专门破坏玩具的邻居家坏小孩,所以就把 unstable 这个不稳定的软件目录起名为 sid 了,这里面的软件一般都是最新的,稳定性、安全稳定值得商榷,如果你想做试验小白鼠,大可使用这里的软件。经过一段时间的测试,这里面的软件可能会进入下一个阶段 testing 目录从而出现在下一个 debian 发行版中,要么就夭折被直接抛弃了。

1.4. component

表示软件包的开放程度,可以指定多个

标准的 debian 组件包括:

  • main: Debian 里最基本及主要且符合自由软件规范的软件 ( packages )。
  • contrib: 这里头软件虽然可以在 Debian 里头运作,即使本身属于自由软件但多半却是相依于非自由 ( non-free ) 软件。
  • non-free: 不属于自由软件范畴的软件。
  • non-us: 这个分类里头的软件都来自非美国地区,当中可能有牵扯到专利、加密..等等问题。
  • marillat: 对应 Christian Marillat 的软件仓库,包括mplayer, transcode等。
  • rareware: 对应 rarewares.org 的软件仓库, 包括很多音效程序,如lame, musepack, beep media player等。
  • ustc: 对应 debian@ustc 维护的一些软件包,如 mule-gbk, gaim-openq, scim, stardict dicts, patched xpdf, irssi, xmms。
  • java: 对应 Blackdown java。包括 j2re, j2sdk ,mozilla java plugin。
  • firefly: 对应打过 firefly 补丁的包,包括 fontconfig mozilla mozilla-firefox pango1.0 qt-x11-free xft
  • misc: 对应其它无分类的包,包括 nvidia-kernel, winex3, rox, chmsee 等

而 ubuntu 的组件与之不同:

  • main: ubuntu 支持的免费软件包
  • restricted: 不免费,但是正规支持的
  • universe:免费,但不是正规支持的
  • multiverse:不免费,不支持

1.5. 示例描述

我们使用国内的 163 源来说明每一行的具体含义,下面是来自163源 ubuntu 帮助页面的条目:

deb http://mirrors.163.com/ubuntu/ precise main restricted universe multiverse
deb-src http://mirrors.163.com/ubuntu/ precise main restricted universe multiverse
  • deb/deb-src : 关键字,deb 指定二进制包, deb-src 指定源码包
  • http://mirrors.163.com/ubuntu/ : 软件包的根目录 $ARCHIVE_ROOT
  • precise : Ubuntu12.04-Precise 发行版本
  • main restricted universe multiverse: 表示使用软件包的开放程度列举

1.6. 参考

Copyright © 温玉 2021 | 浙ICP备2020032454号 all right reserved,powered by Gitbook该文件修订时间: 2023-06-19 08:59:50

results matching ""

    No results matching ""