当我安装时,它要求我设置互联网连接,但由于我安装它的 PC 没有 WiFi 卡,而且我的以太网电缆没有插入,所以我没有设置网络。它现在已安装,但当我尝试安装任何东西或当我安装时apt-get update
,它不起作用,它只是说
Failed to fetch: http://...
有人知道我该如何解决这个问题吗?我以为是存储库的问题,所以我查看了它们以添加/更新它们,它们没问题。我的朋友告诉我用以太网电缆重新安装,但除非万不得已,否则我不想这么做。
答案1
当您离线安装时,可能会出现一堆过时的存储库被添加到您的源中的情况。假设您现在已经通过以太网连接,您所要做的就是修复源。删除目录中损坏的内容sources.list.d
,先进行备份(并小心输入!)
cd /etc/apt
sudo cp sources.list.d sources-d-bak
sudo rm sources.list.d/*
现在尝试再次更新。如果仍然有问题,则需要编辑本身sources.list
并注释掉有#
问题的条目(通过在行首插入
sudo cp sources.list sources-bak
sudoedit sources.list
至少不要注释掉提到主存储库和安全更新存储库的行,而且您很可能还想保留 universe/multiverse 存储库。deb-src
如果您不想启用下载源代码,请注释掉这些行。要保留的内容如下所示(取决于您的位置):
deb http://us.archive.ubuntu.com/ubuntu/ xenial main restricted
deb-src http://us.archive.ubuntu.com/ubuntu/ xenial main restricted
deb http://us.archive.ubuntu.com/ubuntu/ xenial-updates main restricted
deb-src http://us.archive.ubuntu.com/ubuntu/ xenial-updates main restricted
deb http://us.archive.ubuntu.com/ubuntu/ xenial universe
deb-src http://us.archive.ubuntu.com/ubuntu/ xenial universe
deb http://us.archive.ubuntu.com/ubuntu/ xenial-updates universe
deb-src http://us.archive.ubuntu.com/ubuntu/ xenial-updates universe
deb http://us.archive.ubuntu.com/ubuntu/ xenial multiverse
deb-src http://us.archive.ubuntu.com/ubuntu/ xenial multiverse
deb http://us.archive.ubuntu.com/ubuntu/ xenial-updates multiverse
deb-src http://us.archive.ubuntu.com/ubuntu/ xenial-updates multiverse
deb http://security.ubuntu.com/ubuntu xenial-security universe
deb-src http://security.ubuntu.com/ubuntu xenial-security universe
deb http://security.ubuntu.com/ubuntu xenial-security multiverse
deb-src http://security.ubuntu.com/ubuntu xenial-security multiverse
注释掉任何提及 sourceforge 或其他外部存储库的行,因为这些链接很可能已经过时。保存并退出,您就可以更新了。
或者,@Anwar 根据自己的经验建议,将镜像从区域镜像更改为 Ubuntu 主镜像可以解决问题。
为此,删除中的区域标签sources.list
,例如替换为:
http://us.archive.ubuntu.com/ubuntu
有了这个
http://archive.ubuntu.com/ubuntu
一些快速完成此操作的建议:像以前一样制作备份,然后使用 Vim 或 Vi:sudo vi /etc/apt/sources.list
并输入(替换us.
为您的地区):
:%s/us.//gc
这将删除实例,us.
但这是交互式的,因此您可以按y
继续或n
跳过并移至下一个实例。(完成后,键入:wq
保存并退出)
或者如果你愿意的话(先备份!):
sudo sed -i 's/\/us./\//g' /etc/apt/sources.list
这将用 替换所有出现的/us.
(/
匹配一个额外的字符,以防us.
万一有我们不想删除的地方)