I needed a command line BitTorrent client for my Fedora Core 6, and started to look for some options, I found ctorrent, which I could see has the options I may need, and as it is written in C should be fast, I know there is another one written in python also.

Let’s see how to install and use this one. (ctorrent)

First we need to install it.

yum install ctorrent

(you will need extras repository for this)

If you run


with no arguments this is what you get.

CTorrent dnh2 Original code Copyright: YuHong(992126018601033) WARNING: THERE IS NO WARRANTY FOR CTorrent. USE AT YOUR OWN RISK!!!

Generic Options: -h/-H Show this message. -x Decode metainfo(torrent) file only, don’t download. -c Check exist only. don’t download. -v Verbose output (for debugging).

Download Options: -e int Exit while seed hours later. (default 72 hours) -E num Exit after seeding to ratio (UL:DL). -i ip Listen for connection on ip. (default all ip's) -p port Listen port. (default 2706 -> 2106) -s save_as Save file/directory/metainfo as... -C cache_size Cache size,unit MB. (default 16MB) -f Force seed mode. skip hash check at startup. -b bf_filename Bit field filename. (use it carefully) -M max_peers Max peers count. -m min_peers Min peers count. -z slice_size Download slice/block size, unit KB. (default 16, max 128). -n file_number Which file download. -D rate Max bandwidth down (unit KB/s) -U rate Max bandwidth up (unit KB/s) -P peer_id Set Peer ID [-CD0201-] -S host:port Use CTCS server

Make metainfo(torrent) file Options: -t With make torrent. must specify this option. -u url Tracker’s url. -l piece_len Piece length.(default 262144)

eg. hong> ctorrent -s new_filename -e 12 -C 32 -p 6881 eg.torrent

home page: http://ctorrent.sourceforge.net/ see also: http://www.rahul.net/dholmes/ctorrent/ bug report: dholmes@ct.boxmail.com original author: bsdi@sina.com

As you see it has lots of options, I will use here which I think could be the most useful.

-D Limit the download bandwidth in KBytes -U Limit the upload bandwidth in KBytes.

You will mostly want to use this two as you do not want to run out of bandwidth for the rest of you applications.

so a typical use will be:

ctorrent -D 10 -U 5 [bittorrentfile]