如果你喜欢尝试最新版甚至是 beta 版的 Linux 发行版来满足你的好奇心,并始终保持是最新版,那么你就会时常遇到下载较大的 ISO 镜像的烦恼。提供 ISO 的人通常会使用 ISO 镜像的 .torrent 文件来减少服务器的带宽消耗。P2P 下载对于使用者来说好处也是很明显的(就下载速度而言),特别是当流行的 Linux 发行版有新版本发布并上传供下载,每个人同时在下载做种的时候。
Ubuntu 14.10 (utopic Unicorn) 这刚刚发布不久,因此现在在 BitTorrent 网络上应该有很多种子可以下载该版本。虽然有很多基于图形界面的 BitTorrent 客户端,不过我将展示如何通过基于简单的命令行界面的 BitTorrent 客户端下载 ISO 镜像,如果是在远程无图形界面的服务器上的话这会很方便。在另外一篇教程里面,我还会演示如何验证已下载的 ISO 镜像的完整性。
我今天要使用的基于命令行的 BitTorrent 客户端是 transmission-cli。正如你可能知道的那样,Transmission 是最流行的基于图形界面的 BitTorrent 客户端之一。transmission-cli 是它的简装的命令行版本。
在 Linux 上安装 Transmission-cli
要安装 transmission-cli,你不必安装完整的基于图形界面的 Transmission,这是听起来不错。
在 Debian、Ubuntu 或者是基于它们的发行版上:
$ sudo apt-get install transmission-cli
在 Fedora 上:
$ sudo yum install transmission-cli
在 CentOS 或者 RHEL 上(在安装了 EPEL 仓库之后):
$ sudo yum install transmission-cli
通过 transmission-cli 快速地下载 ISO 镜像
transmission-cli的使用非常简单。如果你懒于学习它的命令行选项,所有你要做的事情就是下载 .torrent 文件并运行命令。这会自动寻找可用的种子并从那里下载 ISO 文件。
$ wget http://releases.ubuntu.com/14.10/ubuntu-14.10-desktop-amd64.iso.torrent $ transmission-cli ubuntu-14.10-desktop-amd64.iso.torrent
一旦 ISO 镜像下载完成,它默认存储在 ~/Downloads 文件夹中。下载 1GB 的 Ubuntu ISO 镜像只用了我 5 分钟的时间。
程序下载 ISO 镜像完成后,你会在终端中看到“状态由未完成变为完成”的提示。要注意的是 transmission-cli 会继续运行并做种以便于其他下载者下载。可以按 Ctrl+C 来退出。
为重复使用定制下载选项
如果你经常使用 transmission-cli ,那么值得花时间来熟悉一下它的命令行选项。
-
“-w /path/to/download-directory” 选项指定下载文件保存的文件夹。
-
“-f /path/to/finish-script” 选项设置当前下载完成后要运行的脚本。注意 transmission-cli 默认在文件下载完成后继续运行。如果你想在成功下载完成后自动关闭 transmission-cli,你可以使用这个选项。下面这个简单的脚本可以完成这个功能。
#!/bin/sh sleep 10 killall transmission-cli
-
如果你想为 transmission-cli 分配上传/下载带宽限制,你可以使用 “-d <download-speed-in-KB/s>” 和 “-u <upload-speed-in-KB/s>” 选项。如果你不想限制带宽使用,仅仅指定 “D” 或 “-U” 选项即可。
这有一个更高级的 transmission-cli 使用范例。在这个例子中,命令行客户端在成功下载后自动退出。下载速度不限而上传速度限制为 50KB/s。
$ transmission-cli -w ~/iso -D -u 50 -f ~/finish.sh ubuntu-14.10-desktop-amd64.iso.torrent
via: http://xmodulo.com/download-iso-image-bittorrent-command-line.html
作者:Dan Nanni 译者:wangjiezhe 校对:wxy
本文由 LCTT 原创翻译,Linux中国 荣誉推出
原创文章,作者:Maggie-Hunter,如若转载,请注明出处:https://blog.ytso.com/tech/linux/40640.html