在我的工作网络上,任何 apt-get(或 aptitude)命令都需要很长时间,看起来管理员为此阻止了某些端口(原因不明)。例如
sudo apt-get update
Run Code Online (Sandbox Code Playgroud)
大约需要 2 天,我得到的都是 - 很长的回复列表,例如
Get: 36 http://security.ubuntu.com precise-security/universe amd64 Packages [11.6 kB]
Get: 37 http://security.ubuntu.com precise-security/universe amd64 Packages [11.6 kB]
Get: 38 http://security.ubuntu.com precise-security/universe amd64 Packages [11.6 kB]
Get: 39 http://security.ubuntu.com precise-security/universe amd64 Packages [11.6 kB]
Get: 40 http://security.ubuntu.com precise-security/universe amd64 Packages [11.6 kB]
Run Code Online (Sandbox Code Playgroud)
同样的情况然后我尝试下载软件
Get:1 http://archive.ubuntu.com/ubuntu/ precise/main dash i386 0.5.7-2ubuntu2 [85.8 kB]
Get:2 http://archive.ubuntu.com/ubuntu/ precise/main dash i386 0.5.7-2ubuntu2 [85.8 kB]
Get:3 http://archive.ubuntu.com/ubuntu/ precise/main dash i386 0.5.7-2ubuntu2 [85.8 kB]
Get:4 http://archive.ubuntu.com/ubuntu/ precise/main dash i386 0.5.7-2ubuntu2 [85.8 kB]
Get:5 http://archive.ubuntu.com/ubuntu/ precise/main dash i386 0.5.7-2ubuntu2 [85.8 kB]
Run Code Online (Sandbox Code Playgroud)
我可以做些什么来改变 apt-get 或其他东西的端口
Rya*_*yan 13
我的 ubuntu 服务器在apt-get更新和升级方面总是非常快。通常,屏幕上的线条太快而无法看到。然后突然间他们放慢了速度,一夜之间爬行。
它是 IPv6 做的。
我找到了以下解决方案:
sudo nano /etc/gai.conf
Run Code Online (Sandbox Code Playgroud)
取消注释以下行:
precedence ::ffff:0:0/96 100
Run Code Online (Sandbox Code Playgroud)
对我来说,它是第 54 行(确保您没有取消对以 结尾的注释10)。
保存并退出。
sudo nano /etc/apt/apt.conf.d/99force-ipv4 # (this is to make a new file)
Run Code Online (Sandbox Code Playgroud)
将以下行添加到新文件中:
Aquire::ForceIPv4 false;
Run Code Online (Sandbox Code Playgroud)
保存并退出。
小智 5
sudo nano /etc/gai.conf
Run Code Online (Sandbox Code Playgroud)
添加/取消注释这些行:
reload yes
precedence ::ffff:0:0/96 100
precedence ::/0 10
Run Code Online (Sandbox Code Playgroud)
当我用上面的行更新时,/etc/gai.conf它解决了,并且它ipv4直接使用而不是ipv6安装得很快。
我建议您首先使用性能检查站点之一测量典型的互联网/网络吞吐量。一种可能是www.speedtest.net。您还可以使用简单的 Google 搜索来查找可用于测试互联网连接速度的其他网站。
如果测试表明问题不是您的互联网连接的限制,那么下一步可能是看看这个问题的答案:
如何才能使用靠近我的镜像,或选择更快的镜像?
我建议您首先尝试该问题最流行的答案。归结为将下面两行添加到 的顶部/etc/apt/sources.list。这应该鼓励更新过程自动选择性能更好的下载镜像。
deb mirror://mirrors.ubuntu.com/mirrors.txt precise main restricted universe multiverse
deb mirror://mirrors.ubuntu.com/mirrors.txt precise-updates main restricted universe multiverse
Run Code Online (Sandbox Code Playgroud)
precise上面两行替换为您正在使用的版本的相应代号。Lucid(10.04), Maverick(10.10), Natty(11.04), Oneiric(11.10)如果此方法没有帮助或者根本不是您想要做的事情,那么您也可以考虑让更新管理器尝试选择“最快”的镜像。我在上面提供的链接的问题的其他答案中对此进行了更详细的描述。
小智 0
首先,有两个事实:
apt-get 在标准 Linux 发行版中默认使用 http(端口 80)。
apt-get通常会下载约 20MB 的数据来更新列表。如果您刚刚运行apt-get update并再次运行它,它只会下载约 100KB 的数据。
因此,如果您能够浏览万维网(即使用浏览器的网站)并且您使用的是标准发行版(未定制为使用任何其他端口),则管理员不会阻止任何内容,从而阻止您运行此命令。
问题可能是从您的计算机向 apt-get 用于更新的当前服务器的请求面临一些问题(即可能只是下载问题)。
为了解决你的问题,我的建议(因为你使用的是ubuntu):
打开update-manager-> 单击左下角的设置 -> 单击第一个选项卡 ubuntu 软件 -> 单击“下载自”选项旁边的下拉框 -> 通过在“其他”中选择其他,将服务器更改为离您位置较近的位置列表。另请检查用于更新的协议。一般用户应该是http。-> 现在运行 sudo apt-get update 或使用更新管理器检查更新。现在一切应该对你来说一切顺利。如果按照此操作后仍然无法正常工作,请在此处发表评论。
由于它对您没有帮助,这似乎是在尝试更新前一段时间时收集的过时或部分文件的问题。
我建议您在终端中运行此命令:
sudo mv /var/cache/apt/archives/partial{,bakjune9}
sudo mv /var/lib/apt/lists{,bakjune9}
Run Code Online (Sandbox Code Playgroud)
这些命令将在更新和升级时下载文件时重命名存储文件的目录apt-get。(如果出现问题,您可以将它们重新命名。因此,没有使情况变得比现在更糟的风险)
运行之后:
sudo apt-get update
Run Code Online (Sandbox Code Playgroud)
它将下载大约 20MB 的数据。
如果运行成功,你的问题就解决了。
现在您应该能够运行sudo apt-get upgrade来安装更新。
如果没有,请在此处评论。
| 归档时间: |
|
| 查看次数: |
35167 次 |
| 最近记录: |