当前位置: 首页 > 科技观察

Linux命令行文件下载加速器,快到飞起

时间:2023-03-20 18:58:40 科技观察

如果你是那种经常下载试用各种Linux发行版的人,相信你会喜欢下载加速器。在本指南中,我们将向您介绍Axel,这是一个没有依赖项(gcc和makeutils除外)的轻量级wget克隆。Axel可以安装在任何地方,不仅可以用于通过HTTP/FTP链接同时下载多个文件,还可以加快下载速度。安装Axel(Linux命令行下载加速器)正如我们前面提到的,axel不仅仅是另一个下载工具。它通过使用多个连接从目标检索文件来加速HTTP和FTP下载,并且还可以配置为使用多个镜像。如果这还不足以让我们尝试它,让我们添加以下内容:axel支持自动中止和恢复无响应或在给定时间后未返回数据的连接。此外,如果您有权这样做,您可以利用axel打开多个同时的FTP连接到服务器,以便成倍增加为每个连接分配的带宽。如果这不允许或您不确定,您可以打开到多个服务器的连接并同时从所有服务器下载。最后但同样重要的是,Axel与其他Linux下载加速器的不同之处在于,它在下载时将所有数据放在一个文件中,而不是将数据写入单独的文件并在稍后阶段加入它们。在CentOS/RHEL8/7中,您需要启用EPEL存储库来安装axel:linuxmi@linuxmi:~/www.linuxmi.com$yuminstallel-releaselinuxmi@linuxmi:~/www.linuxmi.com$yuminstallaxel在Fedora中,它是可从默认存储库获得。linuxmi@linuxmi:~/www.linuxmi.com$yuminstallaxellinuxmi@linuxmi:~/www.linuxmi.com$dnfinstallaxel【在Fedora23及以上】Debian及Ubuntu、LinuxMint等衍生品中,可以直接通过aptitude安装axel:linuxmi@linuxmi:~/www.linuxmi.com$sudoaptitudeinstallaxel在ArchLinux和相关发行版(例如ManjaroLinux和OpenSUSELinux)上,您可以使用以下命令直接安装axel:linuxmi@linuxmi:~/www.linuxmi.com$sudopacman-Saxel[在Arch/Manjaro上]linuxmi@linuxmi:~/www.linuxmi.com$sudozypperinstallaxel[在OpenSUSE上]配置Axel-Linux下载加速器您可以使用/etc/axelrc配置axel并在调用它时传递所需的附加选项在命令行上。配置文件有详细记录,我们将在这里列举最有用的选项:reconnect_delay是axel在再次尝试启动与服务器的新连接之前等待的秒数。max_speed是不言自明的。值以每秒字节数(B/s)为单位。考虑到可用带宽,您可能希望将此变量设置为适当的值。这将帮助您防止axel在下载时占用大量带宽。重要说明:请注意,实际最大下载速率取决于您的互联网连接——不用说,如果您的互联网连接速度达到1.22MB/s,将max_speed设置为5MB/s也无济于事。正如你在下面的例子中看到的——我只是留下那个值来说明这一点)。num_connections是axel将尝试启动的最大连接数。推荐值(4)在大多数情况下就足够了,主要是出于对其他FTP用户的尊重。请注意,某些服务器甚至可能不允许多个连接。connection_timeout指示axel在尝试中止和自动恢复之前等待接收响应的秒数。如果尚未在系统范围内设置HTTP_PROXY环境变量,http_proxy允许您设置代理服务器。此变量使用与HTTP_PROXY(http://:PORT)相同的格式。no_proxy是axel不应尝试通过代理访问的本地域的逗号分隔列表。此设置是可选的。buffer_size表示一次可以从所有当前连接读取的最大字节数。verbose使您可以选择是否在屏幕上打印与下载相关的消息。如果您想禁用它,请将其设置为0,如果您仍想查看消息,请将其设置为1。如果您有多个接口,您可以使用interfaces列出可以访问Internet的网络接口。如果未明确设置,axel将使用路由表中的第一个接口。如需更多配置选项,请使用以下命令:linuxmi@linuxmi:~/www.linuxmi.com$axel--help如果仔细查看,您会发现大多数命令行选项与配置文件中的选项类似。此外,-o(-output)选项允许您指定输出文件名。如果使用,它将覆盖源文件名。如果您设置任何命令行选项,它们将覆盖配置文件中的设置。如何在Linux中使用Axel更快地下载文件我们将在配置文件中使用以下设置(取消注释相应行):reconnect_delay=20max_speed=500000num_connections=4connection_timeout=30buffer_size=10240verbose=1来自:https://www.linuxmi.com/axel-linux-xiazai.html现在,我们将使用wget和axel比较HTTP和FTP链接的下载时间。您可以选择任何大小的任何文件,但为简单起见,我们将从以下位置下载一个100MB的文件:ftp://speedtest:speedtest@ftp.otenet.gr/test100Mb.dbhttp://speedtest.ftp.otenet.gr/files/test100Mb.db比较FTP和Axel下载时间使用wget进行FTP下载:100.00M平均205KB/s时间8m7sslinuxmi@linuxmi:~/www.linuxmi.com$wgetftp://speedtest:speedtest@ftp.otenet。gr/test100Mb.db使用axel的FTP下载:在37秒内下载了100兆字节。(平均2734.36KB/s)linuxmi@linuxmi:~/www.linuxmi.com$axel-n10--output=axel-test100Mb.dbftp://speedtest:speedtest@ftp.otenet.gr/test100Mb.db比较HTTP和Axel下载时间HTTP下载使用wget(平均226KB/s):linuxmi@linuxmi:~/www.linuxmi.com$wgethttp://speedtest.ftp.otenet.gr/files/test100Mb.db平均2458.08KB/s):linuxmi@linuxmi:~/www.linuxmi.com$axel-n10--output=axel-test100Mb.dbhttp://speedtest.ftp.otenet.gr/files/test100Mb.db从上面从我们进行的测试结果可以看出,axel可以大大加快FTP或HTTP下载速度。总结在本文中,我们解释了如何使用axel(FTP/HTTP下载加速器)并展示了为什么它比wget等其他程序执行得更快,因为它能够同时打开多个到远程服务器的连接。我们希望这个介绍能激发您尝试使用axel。如果您对本文有任何疑问或意见,请使用下面的评论框告诉我们。我们期待收到您的反馈。