51Testing软件测试论坛

 找回密码
 (注-册)加入51Testing

QQ登录

只需一步,快速开始

微信登录,快人一步

手机号码,快捷登录

查看: 995|回复: 3
打印 上一主题 下一主题

在linux下安装BT服务器

[复制链接]

该用户从未签到

跳转到指定楼层
1#
发表于 2007-12-22 21:09:32 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
1、 BT简介
     BitTorrent是一种新型共享软件方式,优势在于不限制下载带宽和联接线程仍能提供高速下载服务,下载的人越多,下载速度不下降反而更稳定,相比之下FTP仅能提供一定数目内的联接和有限的带宽(下载的人越多,速度越慢) BitTorrent能有效的利用client用户的上行带宽,降低服务器的负载,更适合于提供大文件、大下载人数、长下载时间的下载。
2、 下载安装python
     BitTorrent-3.4.2要求python的版本在2.x以上,如果你还用的是python-2.x以下的版本请到  http://www.python.org/ftp/python/2.3.4/Python-2.3.4.tgz 下载python的最新版本,然后:
1) tar -zxvf  python-2.3.4.tgz      
2)cd  python-2.3.4
3)configure -prefix=/usr/local/python-2.3.4
4)make  &&  make install
5)mv /usr/bin/python  /usr/bin/python-1.5
6)ln -s  /usr/bin/python  /usr/local/python-2.3.4/bin/python  
OK, 和一般linux下编辑安装软件一样,Python 安装完成了。

4、下载安装BitTorrent
你可以到  http://bitconjurer.org/BitTorrent/download.html  去下载最新的*nux下用的tar 或zip 包,然后进行安装:
1) tar -zxvf  BitTorrent-3.4.2.tar.gz
2) cd  BitTorrent-3.4.2   (BitTorrent不用再去编辑,直接就可以用了。)
5、启动BitTorrent的track服务,这个服务用来跟踪、分发所有下载情况
./bttrack.py -port 6969 -dfile dstate >> /home/log/bttrack.log &
建义用普通用户来启动这个服务,这样对安全有好处。这个命令会在当前目录生成一个dstate的文件,并打开6969端口 ,你可以在IE内打入:http://ip:6969/去看服务的相关信息。(当然,现在还没有内容,生成*.torrent发布文件及种子后就会有)。这个命令同时会在/home/log目录下生成一个bttrack.log  的apache日志格式的日志文件,用于今后做日志分析、统计。没有这个目录的话请建一个吧,注意要是这个普通用户可写的:)
6、制作BT的发布文件
为了能让他人下载你的东西 ,你先得做一个以.torrent结尾的BT发布文件:

./btmakemetafile.py  /home/bj3ftp/ftp/Patch/SWDOL/安装盘/  http://IP:6969/announce

"/home/bj3ftp/ftp/Patch/SWDOL/安装盘/" 是你要给他人下载的目录或文件
"http://IP:6969/announce"  是你刚做的track服务器的IP及端口

这个命令完成后,会在/home/bj3ftp/ftp/Patch/SWDOL/下生成一个"安装盘.torrent"的发布文件。把它放到WEB 、论坛 或 FTP等人们从网上能下载到的地方,这样人们就可以通过这个文件去找track服务器及种子下载里实际内容了。
7、 生成第一个种子(seed)
"种子"这个概念曾经使我郁闷过一段时间,BT服务器的track服务并不提供下载服务,提供下载的是他的种子(seed),也就是一个已经下载完成或正在下载的客户端。因为一开始没有这样的种子,所以你得先自己生成一个:
./btdownloadheadless.py --max_allow_in 20 --max_upload_rate 500 --minport 6688 --maxport 6688 /home/bj3ftp/ftp/Patch/SWDOL/安装盘BT下载.torrent --saveas /home/bj3ftp/ftp/Patch/SWDOL/安装盘

--max_allow 20             指这个种子最多可以接受20个连接
--max_upload_rate 500      指这个种子最大的可以接受下载的带宽 500 KB(byte)/s,这样可以控制下载带宽。
--minport 6688  --maxport 6688   最大最小监听端口,这样写就是说种子只监听6688端口,这样方便在防火墙上开端口。
/home/bj3ftp/ftp/Patch/SWDOL/安装盘BT下载.torrent   发布文件的位置
--saveas  /home/bj3ftp/ftp/Patch/SWDOL/安装盘         实际文件的位置

这个命令会在BT服务器本地生成第一个种子,供他人下载。

8、 最后是一个在linux上启动、关闭、显示BT服务的脚本:
#!/bin/bash
case $1 in

start)
  /home/joybaby/BitTorrent-3.4.2/bttrack.py --port 6969 --dfile dstate >> /home/log/bttrack.log &
  sleep 1
  /home/joybaby/BitTorrent-3.4.2/btdownloadheadless.py --max_allow_in 20 --max_upload_rate 500 --minport 6688 --maxport 6688 /home/bj3ftp/ftp/Patch/SWDOL/安装盘BT下载.torrent --saveas /home/bj3ftp/ftp/Patch/SWDOL/安装盘 >&/dev/null  &
   echo "BT started"
;;

stop)
  ps -efw | grep ''bttrack.py'' | grep -v grep |  awk '''' | xargs kill && killall python || \
  echo "BT not stoped,Please kill it by hand"
;;

show)
  ps -efw | grep python | grep -v grep
;;

*)
  echo "Usage:./btseed.sh start|stop|show"
;;
Esac

OK,到此,linux下安装BT服务器完成了

[ 本帖最后由 tanbin2002 于 2007-12-28 13:43 编辑 ]
分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏
回复

使用道具 举报

该用户从未签到

2#
 楼主| 发表于 2007-12-22 21:31:39 | 只看该作者


[ 本帖最后由 tanbin2002 于 2007-12-28 13:41 编辑 ]
回复 支持 反对

使用道具 举报

该用户从未签到

3#
发表于 2008-6-1 20:56:22 | 只看该作者
爪爪
回复 支持 反对

使用道具 举报

该用户从未签到

4#
发表于 2008-6-3 18:32:15 | 只看该作者
NX
回复 支持 反对

使用道具 举报

本版积分规则

关闭

站长推荐上一条 /1 下一条

小黑屋|手机版|Archiver|51Testing软件测试网 ( 沪ICP备05003035号 关于我们

GMT+8, 2024-11-15 01:41 , Processed in 0.085006 second(s), 27 queries .

Powered by Discuz! X3.2

© 2001-2024 Comsenz Inc.

快速回复 返回顶部 返回列表