ubuntu 更新源 或者 apt-get install 出错404 not found ,Failed to fetch

1.考虑是不是能上网

 

2.用apt-get update ,然后再试试apt-get install

如果apt-get update 也出现很多 404 not found 或者 failed to fetch ,就要考虑更换自己的源,百度搜 /etc/apt/sources.list

3.如果还不行,估计是Ubuntu版本太老了,没有维护的了。

比如我用11.04,sudo apt-get install open-vm-dkms 不行,sudo apt-get  update  不行,就死活不行,猜测是版本太老了。?。

 

也可以参考该文

http://www.tuicool.com/articles/EjMJNz

转载如下:

关于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 multiverse
deb http://archive.ubuntu.com/ubuntu/ trusty-security main restricted universe multiverse
deb http://archive.ubuntu.com/ubuntu/ trusty-updates main restricted universe multiverse
deb http://archive.ubuntu.com/ubuntu/ trusty-proposed main restricted universe multiverse
deb http://archive.ubuntu.com/ubuntu/ trusty-backports main restricted universe multiverse
deb-src http://archive.ubuntu.com/ubuntu/ trusty main restricted universe multiverse
deb-src http://archive.ubuntu.com/ubuntu/ trusty-security main restricted universe multiverse
deb-src http://archive.ubuntu.com/ubuntu/ trusty-updates main restricted universe multiverse
deb-src http://archive.ubuntu.com/ubuntu/ trusty-proposed main restricted universe multiverse
deb-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

posted on 2015-01-13 01:18  aji2014  阅读(5813)  评论(0编辑  收藏  举报