CTorrent简介
CTorrent 是用C语言写的一个BT客户端。现在可以运行在多种Linux 版本,MacOS 和 FreeBSD下,以后可能也会运行在Windows下。CTorrent是运行在命令行模式下的,这意味着它不需要任何图形组件(如X Server)。你可以通过远程访问来让它在后台运行。
CTorrent主页
下载
action=downloads
下载测试版本是1.3.2
用户在使用时发现CTorrent有一些bug,一个比较明显的例子是CTorrent下载完成后不会立即把缓存中的数据写入硬盘,这样如果按下Ctrl-C结束程序的话会造成数据的不完整。CTorrent的最新版本是1.3.4(2004年9月7日发布),作者后面就没有再发布新版本,软件的一些问题也没有得到修正。
其中一个叫Dennis Holmes的人贡献颇多,他为CTorrent打了很多patch,然后重新发布,取名为Enhanced CTorrent。
Enhanced CTorrent的主页是。目前已经更新到了ctorrent-dhn2版本,这个版本配合Dennis Holmes用Perl写的一个CTorrent Control Server,可以实现对Enhanced CTorrent运行状况的监控。
安装
将下载回来的ctorrent-1.3.4-dnh2.2.tar.gz文件解压缩。
tar zxvf ctorrent-1.3.4-dnh2.2.tar.gz
进入ctorrent-1.3.4目录
cd ctorrent-1.3.4
配置和编译软件
./configure
make
make install
安装完成后,程序默认会放在/usr/local/bin下,这样我们在任何目录都可以通过ctorrent来使用了
具体参数可以通过ctorrent -h来察看。
举个例子
比如我要将dzh2.torrent这个种子文件的内容下载到/home/BT/下,命令如下
ctorrent -s /home/BT/dzh2/ -e 12 -C 32 -p 6881 /home/dzh2.torrent
CTorrent的命令行参数的意义
-h/-H:显示帮助命令
-x:只解码并显示种子文件信息,不下载。
-c:只检查已下载的数据,不下载。
-v:打开debug调试输出。
下载选项:
-e int 下载完毕后的做种时间(单位:小时),默认为72小时。
-p port 绑定端口,默认为2706。
-s save_as 重命名下载的文件,若是下载的是多个文件,则sava_as是包含多文件的目录。
-C cache_size 缓存大小,默认为16MB。
-f 强制做种模式,不进行SHA1 HASH检查。
-b bf_filename piece位图文件名,详见BitField::SetReferFile()。
-M max_peers 客户端最多与多少个peer通信。
-m min_peers 客户端至少与多少个peer通信。
-n file_number 多文件下,选择哪个文件去下载(例如第二个文件file_number就为2)。
-D rate 限制最大下载速率(单位:KB/s)。
-U rate 限制最大上传速率(单位:KB/s)。
-P peer_id 客户端通信的ID,默认为-CD0102-。
下载数据文件示例:
ctorrent -s new_filename -e 12 -C 32 -p 6881 eg.torrent
制作种子文件示例:
ctorrent -t file_to_make.avi -s a.torrent -u protocol://address/announce
3.2 CTorrent的状态栏的意义
CTorrent运行时输出格式如下:
$ / 1/10/40 [3/148/148] 2MB,1MB | 48,20K/s | 80,40K E:0,1
各项意义为:
/:表明客户端正在工作的符号,以”- | /”循环。
1:种子数目。
10:客户端正在通信的非种子的peer数目。
40:tracker服务器知道的peer数,也是整个bt通信群的peer数。
3:客户端已经下载的piece数目。
148:数据文件全部的piece数目。
148:客户端可以得到的piece数目,若此数小于全部piece数目则不会下载到完整的数据。
2MB:客户端已经下载的数据量。
1MB:客户端正在上传的数据量。
48:客户端的平均下载速率(KB/s)。
20:客户端的平均上传速率(KB/s)。
80:客户端的即时下载速率(KB/s)。
40:客户端的即时上传速率(KB/s)。
0:客户端与tracker服务器通信失败的次数。
1:客户端与tracker服务器通信成功的次数。