在ubuntu(linux)下安装xbt-Tracker
xbtt是xbt-Tracker的简称,官方网站http://xbtt.sourceforge.net/ xbt是一款高效能,低开销的BitTorrent软件,用c++写成。这是个纯tracker,不提供前台,可以自己制作前台(比如php)。我们主要用它的Bt Tracker。以前可以用cvs从sourceforge.net上面下载,后来好像是sourceforge.net停止了服务。
xbtt是xbt-Tracker的简称,官方网站http://xbtt.sourceforge.net/
xbt是一款高效能,低开销的BitTorrent软件,用c++写成。这是个纯tracker,不提供前台,可以自己制作前台(比如php)。我们主要用它的Bt Tracker。以前可以用cvs从sourceforge.net上面下载,后来好像是sourceforge.net停止了服务。
好,现在我们开始安装(ubuntu 12.10) //本人在ubuntu 12.10下亲测可行
一、下载源码
svn co https://xbtt.svn.sourceforge.net/svnroot/xbtt/trunk/xbt/misc xbt/misc
svn co https://xbtt.svn.sourceforge.net/svnroot/xbtt/trunk/xbt/Tracker xbt/Tracker
下载xbt所有的源代码,我们需要misc和XBT Tracker这两个目录
注意:如果你是单独下载的,一定要把这二个文件夹放在xbt目录下(也就是xbt目录下有misc和Tracker)
二、一些准备工作
(1)安装相应的库:
apt-get install cmake g++ libboost-date-time-dev libboost-dev \
libboost-filesystem-dev libboost-program-options-dev libboost-regex-dev \
libboost-serialization-dev libmysqlclient15-dev make subversion zlib1g-dev
注意:具体的库请查看官方网站http://xbtt.sourceforge.net/中的"Installing under Linux"说明
(2)安装mysql,并创建数据的账号和密码:
apt-get install mysql-server
(3)登陆数据库:
mysql -h localhost -u root -p
(4) 创建数据库 "xbt"
create database xbt
(5) 链接数据库
use xbt
(6) 利用source命令,执行导入数据库的操作。创建脚本在xbt/Tracker目录下的 xbt_tracker.sql(这是生成表的脚本)
source /share/BiTorrent/xbt/Tracker
执行完上述步骤后,你的数据库已经安装完成,并完成了建Table等操作了。
三、编译xbt_Tracker
cd xbt/Tracker //进入Tracker目录
./make.sh //执行make.sh脚本
cp xbt_tracker.conf.default xbt_tracker.conf //复制配置文件 正如上面所说,xbt是需要一个前台,需要数据库支持的
重新编辑这个配置文件:
vi xbt_tracker.conf
mysql_host = “localhost” //数据库地址,默认即可
mysql_user = root //数据库用户名
mysql_password = root //数据库密码
mysql_database = xbt //数据库名
注意:mysql_database一项中,需要你事先准备好数据库,默认名字是"xbt",创建脚本在xbt/Tracker目录下的 xbt_tracker.sql(这是生成表的脚本)
最后执行./make.sh,
四、可有出现的问题
1、如果make.sh文件权限不足,用chmod修改:
chmod 755 make.sh //将make.sh的权限设置为 -rwxr-xr-x
2、如果遇到下面的情况
./make.sh
在包含自 ../misc/sql/database.h:9 的文件中
从 server.h:10
从 connection.cpp:8:../misc/sql/sql_result.h:14:25: 错误:mysql/mysql.h:没有那个文件或目录
这表示找不到你自己安装的Mysql,需要定义下数据库的地址
cd ../misc ln -s /usr/local/mysql/include/ mysql //当然,mysql的地址要换成你自己的
cd ../XBT/Tracker ./make.sh
如果正常的话,这样就可以执行了。然后在Tracker目录下你会发现多出一个xbt_tracker的文件
3、./xbt_tracker
如果出现了这个错误:
./xbt_tracker: error while loading shared libraries: libmysqlclient.so.15: cannot open shared object file: No such file or directory
还是mysql问题,建立连接,如下:
cd /usr/lib/ ln -s /usr/local/mysql/lib/mysql/libmysqlclient.so.15 libmysqlclient.so.15 //根据自己的数据库地址修改
五、使用
这个时候,可以说完成了,我们已经启动了xbt_tracker。可以使用了,祝贺!
启动xbt-tracker: ./xbt_tracker
关闭xbt-tracker : kill “cat xbt_tracker.pid" //相应的进程号
announce地址:http://localhost:2710/announce
状态查看地址:http://localhost:2710/statistics或者是http://localhost:2710/statis
六、配置文件的修改:
mysql -h localhost -u root -p
create database xbt
use xbt
并插入下列代码:
INSERT INTO xbt_config (name,value) VALUES ('announce_interval', '1800');
INSERT INTO xbt_config (name,value) VALUES ('anonymous_connect', '1');
INSERT INTO xbt_config (name,value) VALUES ('anonymous_announce', '1');
INSERT INTO xbt_config (name,value) VALUES ('anonymous_scrape', '1');
INSERT INTO xbt_config (name,value) VALUES ('auto_register', '1');
INSERT INTO xbt_config (name,value) VALUES ('clean_up_interval', '60');
INSERT INTO xbt_config (name,value) VALUES ('daemon', '1');
INSERT INTO xbt_config (name,value) VALUES ('debug', '0');
INSERT INTO xbt_config (name,value) VALUES ('gzip_debug', '1');
INSERT INTO xbt_config (name,value) VALUES ('gzip_scrape', '1');
INSERT INTO xbt_config (name,value) VALUES ('listen_ipa', '*');
INSERT INTO xbt_config (name,value) VALUES ('listen_port', '2710');
INSERT INTO xbt_config (name,value) VALUES ('log_access', '0');
INSERT INTO xbt_config (name,value) VALUES ('log_announce', '0');
INSERT INTO xbt_config (name,value) VALUES ('log_scrape', '0');
INSERT INTO xbt_config (name,value) VALUES ('pid_file', 'xbt_tracker.pid');
INSERT INTO xbt_config (name,value) VALUES ('read_config_interval', '300');
INSERT INTO xbt_config (name,value) VALUES ('read_db_interval', '60');
INSERT INTO xbt_config (name,value) VALUES ('redirect_url', '');
INSERT INTO xbt_config (name,value) VALUES ('scrape_interval', '0');
INSERT INTO xbt_config (name,value) VALUES ('table_announce_log', 'xbt_announce_log');
INSERT INTO xbt_config (name,value) VALUES ('table_files', 'xbt_files');
INSERT INTO xbt_config (name,value) VALUES ('table_files_users', 'xbt_files_users');
INSERT INTO xbt_config (name,value) VALUES ('table_scrape_log', 'xbt_scrape_log');
INSERT INTO xbt_config (name,value) VALUES ('table_users', 'xbt_users');
INSERT INTO xbt_config (name,value) VALUES ('write_db_interval', '60');
六、xbt_config表中配置字段的说明
下面你会发现所有可能的配置选项,并在该xbt_config表的默认值。
名字:auto_register
描述:如果启用,它将使种子就跟踪自动注册。
默认值:0(禁用)
名字:anonymous_connect
描述:如果启用,将允许任何人(匿名)来访问跟踪。
默认值:1(启用)
名字:anonymous_announce
描述:如果启用,将允许任何人(匿名)公布的跟踪。
默认值:1(启用)
名字:anonymous_scrape
描述:如果启用,将允许任何人(匿名),以刮的跟踪。
默认值:1(启用)
名字:守护进程
描述:如果启用该服务器将作为守护进程运行(在后台)。
默认值:1(启用)
名字:调试
描述:如果启用该服务器也将在调试模式下运行(去http://tracker:port/debug看到调试信息)。
默认值:0(禁用)
名字:full_scrape
描述:如果启用该服务器将成为全刮到客户端。
默认值:0(禁用)
名字:gzip_debug
描述:如果启用该服务器将gzip压缩(压缩)的调试页面。
默认值:1(启用)
名字:gzip_scrape
描述:如果启用该服务器将gzip压缩(压缩)刮页。
默认值:1(启用)
名字:log_access
描述:如果启用该服务器将创建一个与所有访问到服务器的文件。该文件将被命名为(xbt_tracker_raw.log)
默认值:0(禁用)
名字:log_announce
描述:如果启用该服务器将记录所有进入宣布宣布表(xbt_announce_log)。
默认值:0(禁用)
名字:log_scrape
描述:如果启用该服务器将记录所有进入刮表公布(xbt_scrape_log)。
默认值:0(禁用)
名字:announce_interval
描述:默认宣布间隔(以秒为单位),将里面的torrent文件。
默认值:1800(30分钟)
名字:clean_up_interval
描述:(以秒),默认的间隔清理那些标记删除种子。
默认值:60(1分钟)
名字:read_config_interval
描述:(以秒计),其中的XBT二进制默认间隔将重新读取它的配置(从xbt_tracker.conf文件)。
默认值:60(1分钟)
名字:read_db_interval
描述:(以秒计),其中的XBT二进制默认间隔将重新读取它的配置(从xbt_config表)。
默认值:60(1分钟)
名字:scrape_interval
描述:(以秒),默认的间隔中,一个新的刮是允许的。
默认值:0(擦伤之间没有新的最短时间)
名字:write_db_interval
描述:(以秒计),其中的XBT二进制将更新其数据库的默认值。
默认值: 15
名字:column_files_completed
描述:在xbt_files_users表的'完成'字段的默认值。
默认值:完成
名字:column_files_fid
描述:在xbt_files_users表中的'国际数字'字段的默认值。
默认值:国际数字
名字:column_files_leechers
描述:在xbt_files_users表的'leechers'字段的默认值。
默认值:leechers
名字:column_files_seeders
描述:在xbt_files_users表的'播种机'字段的默认值。
默认值:播种机
名字:column_users_uid
描述:在xbt_files_users和xbt_users表中'的UID'字段的默认值。
默认值:的UID
名字:offline_message
描述:脱机信息将出现在客户端程序。
默认值:空。如果指定的信息跟踪系统将offine。
名字:pid_file
描述:文件中的跟踪器将存储在PID(进程ID)。
默认值:空
名字:query_log
描述:其中的XBT二进制日志所有查询文件名的。
默认值:空
名字:redirect_url
描述:该网址在客户端重定向,如果他/她试图访问浏览器通过一个正常的跟踪网址。
默认值:
名字:table_announce_log
描述:为announce_log表的默认值
默认值:xbt_table_prefix(在xbt_tracker.conf)+ announce_log
名字:table_deny_from_hosts
描述:为deny_from_hosts表的默认值。
默认值:xbt_table_prefix(在xbt_tracker.conf)+ deny_from_hosts
名字:table_files
描述:这些文件的表的默认值。
默认值:xbt_table_prefix(在xbt_tracker.conf)+文件
名字:table_files_users
描述:为files_users表的默认值。
默认值:xbt_table_prefix(在xbt_tracker.conf)+ files_users
名字:table_scrape_log
描述:为scrape_log表的默认值。
默认值:xbt_table_prefix(在xbt_tracker.conf)+ scrape_log
名字:table_users
描述:为用户表的默认值。
默认值:xbt_table_prefix(在xbt_tracker.conf)+用户
名字:torrent_pass_private_key
描述:默认torrent通过私钥。
默认值:一个27字符的随机字符串
名字:listen_ipa
描述:为的XBT跟踪IP地址。
默认值:空。它将运行在所有可用的IP的。
名字:listen_port
描述:端口,其中XBT跟踪运行。
默认值:2710(TCP和UDP)
更多推荐
所有评论(0)