你的位置:首页 > 操作系统

[操作系统]【转】关于Ubuntu的sources.list 的总结


一、作用

   文件/etc/apt/sources.list是一个普通可编辑的文本文件,保存了ubuntu软件更新的源服务器的地址。和sources.list功能一样的是/etc/apt/sources.list.d/*.list(*代表一个文件名,只能由字母、数字、下划线、英文句号组成)。sources.list.d目录下的*.list文件为在单独文件中写入源的地址提供了一种方式,通常用来安装第三方的软件。

复制代码
deb http://archive.ubuntu.com/ubuntu/ trusty main restricted universe multiversedeb http://archive.ubuntu.com/ubuntu/ trusty-security main restricted universe multiversedeb http://archive.ubuntu.com/ubuntu/ trusty-updates main restricted universe multiversedeb http://archive.ubuntu.com/ubuntu/ trusty-proposed main restricted universe multiversedeb http://archive.ubuntu.com/ubuntu/ trusty-backports main restricted universe multiversedeb-src http://archive.ubuntu.com/ubuntu/ trusty main restricted universe multiversedeb-src http://archive.ubuntu.com/ubuntu/ trusty-security main restricted universe multiversedeb-src http://archive.ubuntu.com/ubuntu/ trusty-updates main restricted universe multiversedeb-src http://archive.ubuntu.com/ubuntu/ trusty-proposed main restricted universe multiversedeb-src http://archive.ubuntu.com/ubuntu/ trusty-backports main restricted universe multiverse
复制代码

   如上是ubuntu官方sources.list文件内容,具体地含义如下:

   每一行的开头是deb或者deb-src,分别表示直接通过.deb文件进行安装和通过源文件的方式进行安装。

   deb或者deb-src字段之后,是一段URL,之后是五个用空格隔开的字符串,分别对应相应的目录结构。在浏览器中输入http://archive.ubuntu.com/ubuntu/,并进入dists目录,可以发现有5个目录和前述sources.list文件中的第三列字段相对应。任选其中一个目录进入,可以看到和sources.list后四列相对应的目录结构。

更多内容可以使用man source.list获得。

 

二、源的选择

   ubuntu官方有自身的软件源,直接从官方的软件源获取数据的速度比较慢。而通过国内的一些的源的镜像进行更新一般能够获得比官方源更快的速度,不过不同国内的源的下载速度也会不一样。这里给出了较为详细的ubuntu软件源列表,个人现在觉得选取ubuntu软件源的方法是首先选择位于相同地区的源,然后进行ping操作,时延不是太高即可。对比aliyun、sohu、ubuntu官方ping的数据,可以发现aliyun的源在时延上表现最好。

三、使用sudo apt-get install出现404 not found问题的原因和解决

   最近在12.10上使用sudo apt-get install命令时,出现了404 not found的问题,此时ping archive.ubuntu.com可以ping通,在http://archive.ubuntu.com/ubuntu/dists/ 目录下已经没有quantal相关目录。具体原因是ubuntu对12.10的维护时间不超过一年,超过了相应的时间之后,对应的源的文件都转移到了http://old-releases.ubuntu.com/ubuntu/dists/  目录下。ubuntu发布的版本可以从这里看到,从中一方面可以看到ubuntu数字版本号和英文名称的对应关系,也可以看到以04结尾的版本LTS标识,标识长期维护,这些版本的源在archive.ubuntu.com中呆的时间就比较长。

   解决方法:

   1)使用gedit将sources.list文件打开

    sudo gedit /etc/apt/sources.list

   2)进入替换界面(Search->Replace或者ctrl+H)进行替换操作

四、直接安装deb文件的方法

   1)下载一个deb格式的软件kismet

   curl https://www.kismetwireless.net/code/dists/quantal/kismet/binary-i386/kismet-2011.03.2.i386.deb >kismet-2011.03.2.i386.deb

   2)安装kismet

   dpkg -i kismet-2011.03.2.i386.deb

   3)根据提示安装相关包

   sudo apt-get install libnl2

五、参考材料

[1]repository - How do you tell apt to use files in /etc/apt/sources.list.d - Ask Ubuntu

[2]源列表 - Ubuntu中文

[3]Releases - Ubuntu Wiki

[4]How to fix Ubuntu/Debian apt-get 404 Not Found Package Repository Errors (Saucy, Raring, Quantal, Oneiric, Natty…) | sMyl.es

[5]How do I install a .deb file via the command line askubuntu

[6]Ubuntu .deb包安装方法 - 程序生活 - 博客频道 - CSDN.NET