为什么镜像列表对于我的 Arch 安装很重要?

为什么镜像列表对于我的 Arch 安装很重要?

Arch Linux 初学者指南的“选择镜像”部分很简单,但它并没有解释为什么操作系统需要镜像列表(这是我第一次听说这个)。这镜子ArchWiki 页面以及此 Stack Exchange 站点都没有具体来说首先说说为什么我应该这样做。

维护操作系统磁盘映像的镜像列表的目的是什么?所有基于 Linux/Unix 的操作系统都这样做吗?

答案1

Arch 使用两层镜子;第一个,第 1 层,每小时直接从 archlinux.org 同步。第 2 层镜像从第 1 层同步。禁止直接从 archlinux.org 同步。

这确保了带宽费用在各个镜像之间公平分配,并且不同地理位置的人们不会因从地球另一端的镜像下载缓慢而受到惩罚。这是分配推送软件的负载和成本的有效方法。

从技术上讲,您不需要维护一个以上镜像的列表;如果您有可靠且没有过时的本地镜像(您可以通过访问镜像状态页面,或者使用类似的工具反射器为您自动生成最新列表),那么您就可以在镜像列表中拥有单个条目了。

由于 Arch 是滚动版本,因此确保本地数据库保持最新(通过pacman -Syu)并且同步到与 archlinux.org 同步的镜像非常重要。 Arch 新手面临的最常见问题之一是不理解这种关系,然后发现他们无法升级,因为他们的本地数据库与当前存储库不匹配,因此pacman会抱怨无法找到xx软件包的版本。

如果您阅读您的/etc/pacman.conf,您会发现它包含许多存储库:[core]、[extra] 和 [community],并且可以选择包含 [testing]、[multilib] 和自定义存储库。这些存储库包含所有官方支持的软件包;因此,每个都将同步到 archlinux.org 的镜像,但由 Arch 社区成员托管的自定义存储库除外。

您可以阅读有关 Arch 镜子如何工作的更多信息维基镜像页面

答案2

像 Arch 这样的 Linux 发行版实际上并不是一个单一的软件;它是一个完整的软件。相反,它是许多不同作者的许多不同程序的集合。每个发行版的维护者选择要包含的软件并对其进行编译,将其配置为能够很好地协同工作,然后将其捆绑为操作系统(此过程称为打包,以这种方式准备的单个软件称为打包)作为一个包。)这就是它们被称为 Linux 发行版的原因。 Arch Linux 磁盘上只有一小部分软件实际上是由 Arch Linux 项目编写的。他们所做的大部分工作是以更易于安装和使用的格式分发其他人的软件。

Arch(和许多其他发行版)打包了很多软件,远远超出了一张光盘所能容纳的范围,甚至无法安装在一台计算机上。因此,Linux 发行版的安装盘通常只包含工作系统绝对必需的软件,或者大多数用户可能想要安装的软件。称为包管理器的程序用于选择要安装的软件,也可以在以后用于安装其他包或已安装包的更新版本。大多数包管理器可以从原始安装磁盘安装包,也可以从 Internet 下载包。有些安装盘实际上不包含任何软件,除了启动、启动包管理器和连接到互联网所需的最低限度的软件外,其他所有内容都会在安装过程中下载。

完整的软件包集合可在世界各地的许多服务器上使用。这些服务器都具有相同的软件包集合 - 这就是它们被称为镜像的原因。使用镜像是为了使一台服务器不必处理来自每个用户的流量。如果您选择位于您所在地区的镜像,您也可能获得比位于不同国家或不同大陆的镜像更快的下载速度。

因此,您选择镜像的原因是让您的计算机知道从哪里下载其他软件和安全更新。据我所知,大多数 Linux 发行版都使用这种方法,我相信 BSD 也这样做。

答案3

在这种情况下,镜像是指托管相同信息的备用网址,因此您可以从最快的网址下载您想要的内容(包)。

相关内容