为 Ubuntu 升级准备 repo vm

为 Ubuntu 升级准备 repo vm

假设有 10 台 VM,安装了 Ubuntu 18(Bionic Beaver)。

作为一项安全规定,只有 1 个特定的“repo 服务器”通过互联网从外部 repo 下载软件包。其余 VM 未连接到互联网,并通过此 repo 服务器下载软件包。VM 在 中配置了此功能/etc/apt/sources.list。这可以正常工作。

现在,我遇到的问题是准备将环境升级到 Ubuntu 20.04。 repo 服务器应该有可用于升级的软件包。

我如何配置 repo 服务器来:

  1. 下载适用于 Ubuntu 20.04 的软件包,无需干预磁盘上的 Ubuntu 18.04 软件包
  2. 仅下载 20.04 的“最新”和/或所需软件包,而不是下载“所有”软件包
  3. 确保此虚拟机上存在所有“其他”所需文件,以便其他客户端可以轻松执行升级
  4. 仅下载当前配置的源文件:
deb http://ftp.nluug.nl/os/Linux/distr/ubuntu/ bionic main restricted multiverse
deb http://ftp.nluug.nl/os/Linux/distr/ubuntu/ bionic-updates main restricted multiverse
deb http://ftp.nluug.nl/os/Linux/distr/ubuntu/ bionic universe
deb http://ftp.nluug.nl/os/Linux/distr/ubuntu/ bionic-updates universe

供参考,apt-镜像目前用于从外部存储库克隆文件。

答案1

我也使用apt-mirror并从 18.04 过渡到 20.04。

长话短说,我刚刚将 20.04 源添加到我的mirror.list。就下载软件包而言,这工作正常。但是...

你会在那里遇到问题,因为apt-mirror它没有得到维护,而且 apt 在 20.04 中的工作方式的变化破坏了它。(见此问答amd64 的 Apt-mirror 不包含 focal/main/dep11 和 focal/main/cnf/Commands-amd64)我不得不去https://github.com/Stifler6996/apt-mirror下载一个分叉版本。这很有帮助,但仍然不是完整的修复。我必须将这些行添加到我的postmirror.sh解压 cnf 文件中。

unxz -fk [mirror location]/mirror/us.archive.ubuntu.com/ubuntu/dists/focal-security/main/cnf/Commands-amd64.xz
unxz -fk [mirror location]/mirror/us.archive.ubuntu.com/ubuntu/dists/focal-security/multiverse/cnf/Commands-amd64.xz
unxz -fk [mirror location]/mirror/us.archive.ubuntu.com/ubuntu/dists/focal-security/restricted/cnf/Commands-amd64.xz
unxz -fk [mirror location]/mirror/us.archive.ubuntu.com/ubuntu/dists/focal-security/universe/cnf/Commands-amd64.xz
#
unxz -fk [mirror location]/mirror/us.archive.ubuntu.com/ubuntu/dists/focal-updates/main/cnf/Commands-amd64.xz
unxz -fk [mirror location]/mirror/us.archive.ubuntu.com/ubuntu/dists/focal-updates/multiverse/cnf/Commands-amd64.xz
unxz -fk [mirror location]/mirror/us.archive.ubuntu.com/ubuntu/dists/focal-updates/restricted/cnf/Commands-amd64.xz
unxz -fk [mirror location]/mirror/us.archive.ubuntu.com/ubuntu/dists/focal-updates/universe/cnf/Commands-amd64.xz

(我可能对基本存储库进行了一次性解压缩,我不记得了)

完成所有这些后,镜像在 20.04 上运行良好。一旦我将所有系统从 18.04 转换过来,我就删除了 18.04 行mirror.listapt-mirror自动清理了镜像。

相关内容