在输入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. 最好,将第一步的清除临时文件的命令再执行一遍。
最好选阿里的,自我感觉不错。
另外的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会失败 解决办法看上面。