我怎么样才能找到指定版本的tar包?

很多初次接触Linux和开源软件的同学都有这个问题,而且同时还有:“这个tar包下载速度太慢了,怎么能找到一个比较快的方法?”

法宝一:官网

项目的官网一般会保留有可选版本的下载页面,在这里就能找到对应版本的下载链接,但是速度可能会有些慢。

这就要用我们的第二个法宝了:

法宝二:Mirrors镜像服务器

镜像服务器,俗称镜像源。是一个复制原始站点所有数据的本地(或许)或者距离比原始服务器更近的服务器。它会每隔一段时间向原始服务器发起一次同步请求,来保证镜像完全一致。

通过镜像服务器下载的速度会更快。

下面是几个常用的镜像站点,我一般会按照:非商业,距离近,带宽高,可靠的权重进行排序:

  • mirrors.ustc.edu.cn
    • 距离近、可靠、带宽高
  • mirrors.tuna.tsinghua.edu.cn
    • 镜像多、可靠
  • mirrors.aliyun.com
    • 用作Backup

需要注意的是,现在ipv6普及程度还有待提高,而且部分运营商、地域路由优化有待提升,在一些特定情况下需要指定镜像的ipv4地址,比如:ipv4.mirrors.ustc.edu.cn,但要看镜像有没有提供这个方法。

镜像如何使用呢?

初学者第一次听说镜像源可能是通过学习Linux系统安装的时候知道的,那时候基本上所有的教程都会让你在安装好系统之后“换源”,这个“换源”的操作也就是更换Linux包管理器的源地址。这也是镜像源的一种使用方式。

还有比如pip、npm这种语言的包管理器,基本上不换国内源就是“一杯茶一包烟,一个pip/npm下一天.jpg”的节奏。

还有一种方式是直接访问镜像的站点,在他提供的web界面上进行筛选查找所需要的软件包。

比如,我们要找flume-1.6.0的二进制包,那么我们就要在镜像站主页里先搜索apache,因为flume是apache的子项目。

查找到apache

然后再搜索flume

flume

点进去之后就能找到对应的1.6.0的文件夹,再打开就能看到apache-flume-1.6.0-bin.tar.gz的二进制包了。点击就能下载,速度非常快。

但是有一些指定版本因为版本太低,找不到对应版本的路径或者路径里是空的,那就是这个版本因为太旧,已经被“归档”了,那这时该怎么办呢?

其实对应镜像的页首已经告诉我们了:

Apache Archive

这句话的意思是:旧的非推荐版本可在我们的存档站点上找到。

点击这个红框中的链接,就是归档页面了,在里面按照同样的方法就能搜索的到

关于这些注释:

  • apache写在首页的页头

  • 有些其他的会采用路径内带html的方式来打注释

  • 还有些可以在镜像站的help页面看到

除此之外:

操作系统iso也可以在镜像上找到,有些镜像的web上提供的不全,需要自己去对应镜像仓库里找。

还有一些常用的开源软件也能在镜像站找到,比如vlc、eclipse、emacs等等。

总之,只要仔细寻找都能找到对应的版本,但使用百度搜到一些CxDN之类的付费链接下载就不合算了。