服务器之家:专注于服务器技术及软件下载分享
分类导航

Linux|Centos|Ubuntu|系统进程|Fedora|注册表|Bios|Solaris|Windows7|Windows10|Windows11|windows server|

服务器之家 - 服务器系统 - Linux - Linux下多线程下载工具MWget和Axel使用介绍

Linux下多线程下载工具MWget和Axel使用介绍

2019-06-28 15:20Linux之家 Linux

这篇文章主要介绍了Linux下多线程下载工具mwget和Axel的使用,都是基于命令行进行操作,需要的朋友可以参考下

linux运维在操作linux过程中,用得最多的linux下载工具想必一定是wget,没有看到哪一台服务器没装过wget的,或许有人使用ftp下载,也有人使用多线程的axel以及ProZilla,毫无疑问这两个工具都非常的出色,但是对于习惯使用wget的人来说显得不适应,于是老外便开发了多线程版本的wget工具mwget,m表示multi多线程的意思.
mwget
官方地址:http://sourceforge.net/projects/kmphpfm/?source=dlp
 

复制代码
代码如下:

# cd /usr/local/src/
# wget http://jaist.dl.sourceforge.net/project/kmphpfm/mwget/0.1/mwget_0.1.0.orig.tar.bz2
# tar -xjvf mwget_0.1.0.orig.tar.bz2
# cd mwget_0.1.0.orig
# ./configure
# make
# make install

configure过程中如果出现如下错误,请安装大于等于0.35版本的intltool

复制代码
代码如下:

checking for intltool >= 0.35.0... ./configure: line 6824: intltool-update: command not found
found
configure: error: Your intltool is too old. You need intltool 0.35.0 or later.
# yum install intltool

wget vs mwget速度测试
以下使用下载2.4.5版本的mongodb来取样.
mwget速度测试

复制代码
代码如下:

# mwget http://fastdl.mongodb.org/linux/mongodb-linux-x86_64-2.4.5.tgz
Begin to download: mongodb-linux-x86_64-2.4.5.tgz
FileSize: 90M
36% [====> =====> ===> ====> ] [ 33M] [2.0M/s] [ETA:00:28]

mwget速度截图如下:
Linux下多线程下载工具MWget和Axel使用介绍

 

 wget速度测试
 

复制代码
代码如下:

# wget http://fastdl.mongodb.org/linux/mongodb-linux-x86_64-2.4.5.tgz
--2013-08-16 10:55:23-- http://fastdl.mongodb.org/linux/mongodb-linux-x86_64-2.4.5.tgz
Resolving fastdl.mongodb.org... 54.230.114.206, 54.230.113.36, 54.230.114.144, ...
Connecting to fastdl.mongodb.org|54.230.114.206|:80... connected.
HTTP request sent, awaiting response... 200 OK
Length: 94827295 (90M) [application/x-tar]
Saving to: “mongodb-linux-x86_64-2.4.5.tgz.1”

6% [==> ] 6,470,547 210K/s eta 6m 26s

wget速度截图如下
Linux下多线程下载工具MWget和Axel使用介绍

 

mwget用法:
 

复制代码
代码如下:

# mwget -h
GNU MWget 0.1.0 ,a non-interactive and multiline network retriever of all POSTIX Systems.
Usage: mwget [Options]... [URL]...
Options:
-b, --debug Show the debug message
-c, --count=num Set the retry count to [num], no limit when "0", the default is "99"
-d, --directory=dir Set the local direcotry to [dir], the default is "."
-f, --file=file Rename the file to [file]
-h, --help A brief summary of all the options
-i, --interval=num Set the ftp retry interval to [num] seconds, the default is "5"
-n, --number=num Use [num] connections instead of the default (4)
-r, --referer=URL Include `Referer: [URL]' header in HTTP request.
-t, --timeout=num Set the connection timeout to [num] seconds, the default is "30"
-v, --version Show the version of the mwget and exit
-x, --proxy=URL Set the proxy [URL]

Mail bug reports and suggestions to <sa@kmlinux.tk><xiao_suo@hotmail.com>
On website bug reports and suggestions to <http://mwget.sourceforge.net/> <http://www.kmlinux.tk/>
We Welcome your BUG REPORT!

 

Axel 
运维工作中,常常需要下载文件,因为网站下载速度限制或者网络等原因导致下载让人无法忍受,前面有介绍多线程wget工具mwget,提速不少,而且使用很简单。axel使用的人更多,不仅仅安装方法简单,命令更简单。往下看。
安装Axel
RPM安装Axel(方法一)
下载地址:http://pkgs.repoforge.org/axel/
如图,选择适合你服务器的RPM
Linux下多线程下载工具MWget和Axel使用介绍

 

复制代码
代码如下:

root@ttlsa # wget http://pkgs.repoforge.org/axel/axel-2.4-1.el6.rf.x86_64.rpm
root@ttlsa # rpm -ivh axel-2.4-1.el6.rf.x86_64.rpm 
Preparing... ########################################### [100%]
1:axel ########################################### [100%]

yum安装Axel(方法二)

复制代码
代码如下:

root@ttlsa # yum install axel

 apt-get安装Axel
如果你是Ubuntu系统

复制代码
代码如下:

root@ttlsa # axel -h
Usage: axel [options] url1 [url2] [url...]

--max-speed=x           -s x    最大速度 (字节/秒)
--num-connections=x     -n x    最大连接数
--output=f              -o f    指定文件名
--search[=x]            -S [x]  Search for mirrors and download from x servers
--header=x              -H x    添加header
--user-agent=x          -U x    设置用户代理
--no-proxy              -N      不使用任何代理
--quiet                 -q      Leave stdout alone
--verbose               -v      显示更多状态信息
--alternate             -a      显示简单进度条
--help                  -h      帮助
--version               -V      版本信息
 axel使用实例
下载centos

复制代码
代码如下:

root@ttlsa # axel http://mirrors.btte.net/centos/6.5/isos/x86_64/CentOS-6.5-x86_64-bin-DVD1.iso
[ 1%] .......... .......... .......... .......... .......... [4654.5KB/s]
[ 1%] .......... .......... .......... .......... .......... [4657.1KB/s]
[ 1%] .......... .......... .......... .......... .......... [4656.5KB/s]
[ 1%] .......... .......... .......... .......... .......... [4659.3KB/s]

 下载运维生存时间某图片

复制代码
代码如下:

root@ttlsa # axel http://www.ttlsa.com/wp-content/uploads/2014/04/<a href="http://www.ttlsa.com/monitor/zabbix/" />  简单进度条
默认情况下,整个屏幕都是进度条,加上-a参数,进度条类似wget。

复制代码
代码如下:

root@ttlsa # axel -a http://mirrors.btte.net/centos/6.5/isos/x86_64/CentOS-6.5-x86_64-bin-DVD1.iso 
Initializing download: http://mirrors.btte.net/centos/6.5/isos/x86_64/CentOS-6.5-x86_64-bin-DVD1.iso
File size: 4467982336 bytes
Opening output file CentOS-6.5-x86_64-bin-DVD1.iso
Starting download</p> <p>[ 1%] [0 1 2 3 ] [ 3.2MB/s] [21:47]

 下载限速
ttlsa的网站带宽有限制,我要保证下载的同时又不影响用户的访问,例如限制为1MB/s的下载速度,如下可以看到速度基本保证在1MB以内。

复制代码
代码如下:

root@ttlsa # axel -s 1024000 http://mirrors.btte.net/centos/6.5/isos/x86_64/CentOS-6.5-x86_64-bin-DVD1.iso 
Initializing download: http://mirrors.btte.net/centos/6.5/isos/x86_64/CentOS-6.5-x86_64-bin-DVD1.iso
File size: 4467982336 bytes
Opening output file CentOS-6.5-x86_64-bin-DVD1.iso
State file found: 30522952 bytes downloaded, 4437459384 to go.
Starting download

,,,,,,,... .......... .......... .......... .......... [ 394.8KB/s]
[ 0%] .......... .......... .......... .......... .......... [ 689.2KB/s]
[ 0%] .......... .......... .......... .......... .......... [ 879.5KB/s]
[ 0%] .......... .......... .......... .......... .......... [ 974.5KB/s]
[ 0%] .......... .......... .......... .......... .......... [1086.4KB/s]
[ 0%] .......... .......... .......... .......... .......... [ 967.5KB/s]
[ 0%] .......... .......... .......... .......... .......... [ 943.8KB/s]
[ 0%] .......... .......... .......... .......... .......... [1021.0KB/s]
[ 0%] .......... .......... .......... .......... .......... [1066.1KB/s]

最后
完成,方法很简单,功能很简单。运维生存时间的服务器以及安装了axel,你的安装了吗?

延伸 · 阅读

精彩推荐
  • LinuxLinux上设置用户通过SFTP访问目录的权限的方法

    Linux上设置用户通过SFTP访问目录的权限的方法

    这篇文章主要介绍了Linux上设置用户通过SFTP访问目录的权限的方法,SFTP可以理解为使用SSH协议进行FTP传输的协议,因而同时要对OpenSSH进行相关设置,需要的朋...

    OSChina10022019-06-19
  • LinuxLinux中环境变量配置的步骤详解

    Linux中环境变量配置的步骤详解

    Linux中环境变量包括系统级和用户级,系统级的环境变量是每个登录到系统的用户都要读取的系统变量,而用户级的环境变量则是该用户使用系统时加载的...

    Myths7882022-02-10
  • Linux详解Linux系统下PXE服务器的部署过程

    详解Linux系统下PXE服务器的部署过程

    这篇文章主要介绍了Linux系统下PXE服务器的部署过程,包括对PXE的API架构作了一个基本的简介,需要的朋友可以参考下...

    运维之道9812019-07-04
  • Linux手把手教您在 Linux 上使用 GPG 加解密文件

    手把手教您在 Linux 上使用 GPG 加解密文件

    在本教程中,我将告诉你如何用 GPG 加密和解密文件。这是一个简单的教程,你可以在你的 Linux 系统上尝试所有的练习。这将帮助你练习 GPG 命令,并在你...

    Linux中国6962021-12-15
  • Linuxlinux中rmdir命令使用详解(删除空目录)

    linux中rmdir命令使用详解(删除空目录)

    今天学习一下linux中命令: rmdir命令。rmdir是常用的命令,该命令的功能是删除空目录,一个目录被删除之前必须是空的 ...

    linux命令大全5372019-11-19
  • LinuxLinux lnmp下无法使用mail发邮件的两种解决方法

    Linux lnmp下无法使用mail发邮件的两种解决方法

    在配置了lnmp环境后,出现了mail函数不能发送邮件的问题,其实有两种方法,一是使用sendmail组件,而是使用postfix。下面为大家一一介绍下 ...

    Linux之家4042019-09-17
  • LinuxLinux常用的日志文件和常用命令

    Linux常用的日志文件和常用命令

    成功地管理任何系统的关键之一,是要知道系统中正在发生什么事。 Linux 中提供了异常日志,并且日志的细节是可配置的。Linux 日志都以明文形式存储,所...

    Linux教程网2632020-04-18
  • Linux确保Linux系统安全的前提条件 漏洞防护

    确保Linux系统安全的前提条件 漏洞防护

    Linux 作为开放式的操作系统受到很多程序员的喜爱,很多高级程序员都喜欢编写Linux操作系统的相关软件。这使得Linux操作系统有着丰富的软件支持,还有无...

    Linux之家2642020-04-11