先安装Python
tar zxvf Python-2.3.4.tgz
cd Python-2.3.4
configure --prefix=/usr/local/python-2.3.4
make ; make install
mv /usr/bin/python /usr/bin/python-1.5
ln -s /usr/local/python-2.3.4/bin/python /usr/bin/python
安装BitTorrent
tar zxvf BitTorrent-3.4.2.tar.gz
cd BitTorrent-3.4.2
启动bt服务
./bttrack.py --port 6969 --dfile dstate > /home/log/bttrack.log &
(--port 6969 --dfile dstate表示打开6969端口并记录log)
制作seed文件
./btmakemetafile.py /download/download/
(/download/download/是你要给他人下载的目录或文件, 是你刚做的track服务器的IP及端口,
制作好的seed文件保存在发布目录的上一级目录 如/download/download.torrent)
启动原始seed下载服务
nohup ./btdownloadheadless.py --max_allow_in 60 --max_upload_rate 1000
--minport 6888 --maxport 6888 /download/download.torrent --saveas
/download/download > /dev/null &
(--max_allow_in 60 这个种子最多允许60个连接, --max_upload_rate 1000 这个种子最大下载速度1000k,
--minport 6888 --maxport 6888 最大最小监听端口,这样写就是说种子只监听6888端口,这样方便在防火墙上开端口,
/download/download.torrent 发布文件的位置, --saveas /download/download 实际文件的位置)
每开启一个新的下载内容就要制作一遍seed文件并在服务器开启新的seed下载服务, seed下载服务需要用上面命令在后台执行
不然退出后进程结束就不能提供下载了 另外每多建立一个种子就需要在seed下载服务中更换一个端口
写BT自动启动 终止 生成种子脚本
btstart.sh
#!/bin/bash
case $1 in
start)
/data/bt/BitTorrent-3.4.2/bttrack.py --port 6965 --dfile dstate >>/data/bt/log/bttrack.log&
sleep 1
/data/bt/BitTorrent-3.4.2/btmakemetafile.py /data/ftp/pub/youxi.zip
sleep 2
/data/bt/BitTorrent-3.4.2/btdownloadheadless.py --max_allow_in 20 --max_upload_rate 500 --minport 6888 --maxport 6
888 /data/ftp/pub/youxi.zip.torrent --saveas /data/ftp/pub/youxi.zip >&/dev/null&
echo "BT started"
;;
stop)
ps -efw |grep "bttrack.py" |grep -v grep | awk '{print $2}' | xargs kill&&killall python ||
echo "BT not stoped,Please kill it by hand"
;;
show)
ps -efw | grep python | grep -v grep
;;
*)
echo "Usage:./bt.sh start|stop|show"
;;
esac
这样子每次项目上线,只需要 执行[root@ftp01-10 bt]# ./btstart.sh stop|status|start 即可
阅读(3297) | 评论(0) | 转发(0) |