在输入sudo apt-get update出现暂时不能解析域名“us.archive.ubuntu.com”折腾了一周,终于解决了。

解决办法:有用的点个赞

先要吧源备份一个哦:

sudo cp /etc/apt/sources.list.d/ubuntukylin.list /etc/apt/sources.list.d/ubuntukylin.list.bak

接下来:

sudo vim /etc/apt/sources.list.d/ubuntukylin.list

第一步打开文件后将文件

原来的:deb http://archive.ubuntukylin.com:10006/ubuntukylin trusty main

修改的:deb http://archive.ubuntukylin.com:10006/ubuntukylin xenial main

第二步这一步干完了还不够 接下来配置dns

sudo vi /etc/resolv.conf

打开后添加

#阿里的dns  因为我用的是阿里的源哦 这里要根据你使用的源修改

nameserver 223.5.5.5

第三步接下来 重启网络服务

/etc/init.d/networking restart

这样就好了接下来先更新吧

sudo apt-get update

sudo apt-get upgrade

执行我完成后问题又来了 请看:

更新后出现:

AppStream cache update completed, but some metadata was ignored due to errors.

正在读取软件包列表... 完成

W: GPG 错误:http://archive.ubuntukylin.com:10006/ubuntukylin xenial InRelease: 由于没有公钥,无法验证下列签名: NO_PUBKEY 8D5A09DC9B929006

W: 仓库 “http://archive.ubuntukylin.com:10006/ubuntukylin xenial InRelease” 没有数字签名。

N: 无法认证来自该源的数据,所以使用它会带来潜在风险。

N: 参见 apt-secure(8) 手册以了解仓库创建和用户配置方面的细节。

W: 以下 ID 的密钥没有可用的公钥:

8D5A09DC9B929006

解决办法:sudo apt-get install uk-keyring

注意:这个问题跟软件中没关系,是因为14.04的源没有翻译文件,在16.04以后apt默认源必须要有翻译文件,不然会报错。  所以上面已有人回复了将trusty改成xenial,然后update,会报没有安装源的签名公钥,所以update后装uk–keyring,然后在update就可以了。

接下来有时候更新会出现hash 校验和不符

出现这样的问题,可能有两种原因:

一个是之前的更新没有顺利结束,有临时文件残留;

另一个就是网络的问题。

解决办法:

针对以上的两个原因,对应的有以下两个解决方案:

一、清除临时文件

使用如下命令清除临时文件:

sudo apt-get clean

sudo rm -rf /var/lib/apt/lists/*

执行了以上命令后,再执行 update&&upgrade 命令试试,是不是OK了?

如果还是不行,看看第二种方案。

P.S. 笔者遇到这个校验和不符的问题,就是因为网络问题。

二、选择更优的软件源(服务器)

在 系统设置 里,找到 软件和更新 ,在 Ubuntu软件 这个选项卡里有个 源代码 下载自 ,将其选为 其他 ,即会弹出如下图所示的服务器列表。

我们也不知道哪个源更好。

点击 选择最佳服务器 按钮,让它自己去选择。

这个需要一定的时间去检验,取决于你的网络状况。

选择好新的软件源后就可以继续更新了。

P.S. 最好,将第一步的清除临时文件的命令再执行一遍。

7596c23bf96241dd00c60a2e522d7603.png

最好选阿里的,自我感觉不错。

另外的ubuntu 问题,在更新的时候有时候会出现

“无法获得锁 /var/lib/dpkg/lock -open (11:资源暂时不可用)”的方法

解决办法:

在ubuntu系统的termial下,用apt-get install 安装软件的时候,如果在未完成下载的情况下将terminal close。此时 apt-get进程可能没有结束。结果,如果再次运行apt-get install 命令安装如今,可能会发生下面的提示:

无法获得锁 /var/lib/dpkg/lock - open (11: 资源暂时不可用)

无法锁定管理目录(/var/lib/dpkg/),是否有其他进程正占用它?

解决办法如下:

1.终端输入 ps  -auxc | grep apt,列出进程。找到含有apt-get的进程,直接sudo killall apt*

2.强制解锁,命令

sudo rm /var/cache/apt/archives/lock

sudo rm /var/lib/dpkg/lock

更改了源之后,update会失败 解决办法看上面。

Logo

更多推荐