apt-get 文件存储在哪里?

hko*_*sha 32 apt

有多个运行 Ubuntu 的虚拟机,它们都通过以下命令更新:

apt-get update
apt-get upgrade
Run Code Online (Sandbox Code Playgroud)

但是单独更新每个 VM 需要花费大量时间来下载所需的包,并且还使用大量带宽(我已经用完了)。是否可以将更新的文件apt-get直接传输到 VM 中?

我知道包存储在其中,/var/cache/apt/archives但我需要 apt-get 数据库文件(镜像列表、索引、镜像上的可用包,...)


更新:有很多解决方案

  1. apt-cacher-ng 如答案中所述。
  2. 为缓存 apt 文件而构建的 Docker 镜像(它们实际上运行 squid)
  3. 简单地使用鱿鱼

另外,如答案中所述,请参阅在 LAN 上缓存 apt 下载的最佳方法?

tur*_*rbo 46

您已经下载的 .deb 文件存储在/var/cache/apt/archives/.

  • 这就是为什么我有两倍的声誉;-P (12认同)

小智 17

不是您问题的明确答案,但您是否考虑过设置 apt 代理?我使用 apt-cacher-ng(apt-get install apt-cacher-ng :D)。Prehaps 在 VM 主机上设置它,并告诉 VM(和主机)使用它作为他们的代理(就像添加一个文件(例如02proxy)到/etc/apt/apt.conf.d/ 包含

Acquire::http { Proxy "http://vm host ip:3142"; };
Run Code Online (Sandbox Code Playgroud)

这样你就可以apt-get upgrade不用手动复制文件了。当一台计算机下载 debs 时,它们将存储在请求它的下一台计算机的代理上。可以处理多个版本和不同的架构等

只是一个:D


Naf*_*Kay 16

/var/cache/apt/archives 是它们应该存放的地方。