概述:

本文是在逛论坛是的发现,借鉴过来,以便学习。
源列表主文件 /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

最后忠告

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

最新文章

  1. fMRI数据分析处理原理及方法(转载)
  2. 5.1---二进制数插入(CC150)
  3. Unity5网络模块UNet介绍
  4. Introduction to ASP.NET 5
  5. 说说C#中IList与List区别
  6. bzoj4044
  7. loading android
  8. Mac下node.js卸载方法收集
  9. 【LeetCode】66. Plus One
  10. C语言检查ip是否合法
  11. 微信小程序初体验,入门练手项目--通讯录,部署上线(二)
  12. fastjson SerializerFeature详解
  13. SpringCloud(6)---熔断降级理解、Hystrix实战
  14. Java语法基础学习DayTwenty(反射机制续)
  15. 异常:Keyword not supported: 'data source'的解决办法
  16. 三 os模块
  17. SVN不要显示问号
  18. MSSQL Server 数据库备份还原常用SQL语句及注意
  19. Iterative Quantization,ITQ
  20. Android手机无线adb

热门文章

  1. [转]js获取iframe通过url传递的参数
  2. 2019 边锋游戏java面试笔试题 (含面试题解析)
  3. python3.6安装pyinstaller报错:AttributeError: module 'enum' has no attribute 'IntFlag'
  4. js 递归遍历对象 插入属性 遍历树结构
  5. ES6 之 对象的简写方式
  6. 最强在线文件格式转换(支持200+文件格式如常用的PDF,DOCX,JPG,GIF,MP3,MP4,FLV,MOBI)(通用)
  7. 【前端_js】array.forEach和$.each()及$().each()的用法与区别
  8. SpringCloud2.0 Eureka Server 服务中心 基础教程(二)
  9. 线性排序总结(c++实现)
  10. Nuxt 学习资料