Установка XBTT аля Debian 5

DarkMod

Legend
Установка XBTT аля Debian 5
Отдельная благодарность за предоставленный Выделенный Сервер InKomen (пока он спал установил xbtt тсссссс:))
И так поехли:

Перед установкой обновиться
Code:
apt-get update

Установим необходимые компоненты
Code:
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

Затем скачиваем из SVN
Code:
svn co http://torrentpier2.googlecode.com/svn/trunk/install/xbt/linux/misc xbt/misc
svn co http://torrentpier2.googlecode.com/svn/trunk/install/xbt/linux/Tracker xbt/Tracker

Собираем
Code:
cd xbt/Tracker
./make.sh

Добавляем конфиг
Code:
nano xbt_tracker.conf
Code:
mysql_host                  = localhost
mysql_database              = forum
mysql_user                  = user
mysql_password              = user

auto_register              = 0
anonymous_announce          = 0
anonymous_scrape            = 0
anonymous_connect          = 0
full_scrape                = 0
listen_check                = 0

gzip_debug                  = 0
gzip_scrape                = 1
full_scrape                = 0

announce_interval          = 700
clean_up_interval          = 60
read_config_interval        = 60
read_db_interval            = 150
scrape_interval            = 0
write_db_interval          = 3
read_files_interval        = 2

table_files                = bb_bt_torrents
table_users                = bb_bt_users
table_files_users          = bb_bt_tracker

column_files_completed      = complete_count
column_files_fid            = topic_id
column_users_uid            = user_id

column_users_can_leech      = case when bt.u_down_total>5368709120 and (bt.u_up_total+bt.u_up_bonus)<bt.u_down_total*0.3 then 0 else 1 end
column_users_torrents_limit = case when bt.u_up_total>greatest(5368709120,bt.u_down_total) then 0 when bt.u_up_total>5368709120 and bt.u_down_total>0 then floor((bt.u_up_total+bt.u_up_bonus)/0.3/bt.u_down_total)+1 when (bt.u_up_total+bt.u_up_bonus)>bt.u_down_total then 3 else 2 end

column_files_dl_percent    = (select case tor.tor_type when 1 then 0 when 2 then 50 else 100 end from bb_bt_torrents tor where tor.topic_id=bt.topic_id) as dl_percent

log_announce                = 0
gdc                        = 1
debug                      = 0
#free_leech                = 0
log_access                  = 0

redirect_url                = http://site.ru/forum/
trust_ipv6                  = 1
pid_file                    = xbt_tracker.pid

Делаем автоматический запуск
Code:
nano /etc/init.d/xbt
Code:
#!/bin/sh

XBT_PATH="путь до папки Tracker"

start() {
        echo "Starting XBT Tracker"
        start-stop-daemon --start --quiet --exec $XBT_PATH/xbt_tracker -- --conf_file $XBT_PATH/xbt_tracker.conf
        echo $?
}

stop() {
        echo "Stopping XBT Tracker"
        start-stop-daemon --stop --quiet --pidfile /root/xbt/xbt_tracker.pid
        echo $?
}

case "$1" in
        start)
                start
;;
        stop)
                stop
;;
        *)
                echo "Usage: $0 {start|stop}"
                exit 1
esac

exit 1

Сделаем его исполняемым и поставим в автозапуск
Code:
chmod +x /etc/init.d/xbt
update-rc.d xbt defaults 99

Запускаем
Code:
/etc/init.d/xbt start

Проверить можно пройдя на страницу http://ваш-ип:2710, после этого он передет на вашу страничку

Лан поехали дальше, заходим config.php ищем
PHP:
$bb_cfg['announce_type']      = 'php';
// Меняем на xbt
$bb_cfg['announce_type']      = 'xbt';

Теперь го в БД, заходим в таблицу xbt_config. Копируем приват кей, выглядет таким образом
Code:
Dark4ODhDRGWFdfhjRiIr5Cepq
вставляем его в bb_config torrent_pass_private_key

Вот что должно получитсья
Снимок.webp

По поводу статистики отпишусь позже. Удачной вам работы на ночь)
Что то упустил не обежайтесь)
 
Попробовал собрать по аналогии на CentOS, пакеты поставил,XBTT скачал, стал собирать анонсер и..
-bash: ./make.sh: Отказано в доступе
 
Code:
root@vdsts48:/home/xbtt/xbt/Tracker# ./make.sh
: No such file or directory
g++: no input files
: command not founde.cpp: line 3:
: command not founde.cpp: line 7:
: command not founde.cpp: line 13:
'./misc/sql/database.cpp: line 14: syntax error near unexpected token `
'./misc/sql/database.cpp: line 14: `Cdatabase::Cdatabase()
: command not foundry.cpp: line 3:
: command not foundry.cpp: line 7:
../misc/sql/sql_query.cpp: line 8: syntax error near unexpected token `Cdatabase'
'./misc/sql/sql_query.cpp: line 8: `Csql_query::Csql_query(Cdatabase& database, const std::string& v):
: command not foundult.cpp: line 3:
../misc/sql/sql_result.cpp: line 4: syntax error near unexpected token `MYSQL_ROW'
../misc/sql/sql_result.cpp: line 4: `Csql_row::Csql_row(MYSQL_ROW data, unsigned long* sizes, const boost::shared_ptr<Csql_res'lt_source>& source)
: command not found: line 3:
: command not found: line 10:
: command not found: line 14:
../misc/bt_misc.cpp: line 15: syntax error near unexpected token `('
'./misc/bt_misc.cpp: line 15: `std::string escape_string(const std::string& v)
: command not found line 3:
: command not found line 7:
../misc/bvalue.cpp: line 8: syntax error near unexpected token `long'
'./misc/bvalue.cpp: line 8: `Cbvalue::Cbvalue(long long v)
: No such file or directory*
../misc/sha1.cpp: line 2: CMakeLists.txt: command not found
: command not foundine 3: *
../misc/sha1.cpp: line 4: CMakeLists.txt: command not found
../misc/sha1.cpp: line 5: CMakeLists.txt: command not found
../misc/sha1.cpp: line 6: CMakeLists.txt: command not found
: command not foundine 7: *
../misc/sha1.cpp: line 8: CMakeLists.txt: command not found
../misc/sha1.cpp: line 9: CMakeLists.txt: command not found
../misc/sha1.cpp: line 10: CMakeLists.txt: command not found
../misc/sha1.cpp: line 11: syntax error near unexpected token `('
'./misc/sha1.cpp: line 11: ` *      2**(n/2) to find any two messages with the same digest,
: command not found line 3:
: command not found line 13:
../misc/socket.cpp: line 15: const: command not found
: command not found line 15:
: command not found line 17:
../misc/socket.cpp: line 19: const: command not found
: command not found line 19:
: command not found line 21:
../misc/socket.cpp: line 22: static: command not found
: command not found line 22:
: command not found line 23:
../misc/socket.cpp: line 24: syntax error near unexpected token `SOCKET'
'./misc/socket.cpp: line 24: `Csocket::Csocket(SOCKET s)
: command not foundary.cpp: line 3:
: command not foundary.cpp: line 7:
../misc/virtual_binary.cpp: line 8: syntax error near unexpected token `const_memory_range'
'./misc/virtual_binary.cpp: line 8: `Cvirtual_binary_source::Cvirtual_binary_source(const_memory_range d)
: command not foundline 3:
: command not foundline 8:
../misc/xcc_z.cpp: line 9: syntax error near unexpected token `('
'./misc/xcc_z.cpp: line 9: `Cvirtual_binary xcc_z::gunzip(const_memory_range s)
./make.sh: line 11: config.cpp: command not found
./make.sh: line 12: connection.cpp: command not found
./make.sh: line 13: epoll.cpp: command not found
./make.sh: line 14: server.cpp: command not found
./make.sh: line 15: tcp_listen_socket.cpp: command not found
./make.sh: line 16: tracker_input.cpp: command not found
./make.sh: line 17: transaction.cpp: command not found
./make.sh: line 18: udp_listen_socket.cpp: command not found
./make.sh: line 19: XBT Tracker.cpp: command not found
./make.sh: line 20: -Wl,-Bsymbolic-functions: command not found
 
XANDER-CAGE,Схожая проблема:
Code:
[root@linux Tracker]# ./make.sh
: Нет такого файла или каталога
g++: не заданы входные файлы
: команда не найдена.cpp: line 3:
: команда не найдена.cpp: line 7:
: команда не найдена.cpp: line 13:
'./misc/sql/database.cpp: line 14: syntax error near unexpected token `
'./misc/sql/database.cpp: line 14: `Cdatabase::Cdatabase()
: команда не найденаy.cpp: line 3:
: команда не найденаy.cpp: line 7:
../misc/sql/sql_query.cpp: line 8: syntax error near unexpected token `Cdatabase'
../misc/sql/sql_query.cpp: line 8: `Csql_query::Csql_query(Cdatabase& database, 'onst std::string& v):
: команда не найденаlt.cpp: line 3:
../misc/sql/sql_result.cpp: line 4: syntax error near unexpected token `MYSQL_ROW'
../misc/sql/sql_result.cpp: line 4: `Csql_row::Csql_row(MYSQL_ROW data, unsigned'long* sizes, const boost::shared_ptr<Csql_result_source>& source)
: команда не найдена line 3:
: команда не найдена line 10:
: команда не найдена line 14:
../misc/bt_misc.cpp: line 15: syntax error near unexpected token `('
'./misc/bt_misc.cpp: line 15: `std::string escape_string(const std::string& v)
: команда не найденаline 3:
: команда не найденаline 7:
../misc/bvalue.cpp: line 8: syntax error near unexpected token `long'
'./misc/bvalue.cpp: line 8: `Cbvalue::Cbvalue(long long v)
: Нет такого файла или каталога
../misc/sha1.cpp: line 2: client.h: команда не найдена
: команда не найденаne 3: *
../misc/sha1.cpp: line 4: client.h: команда не найдена
../misc/sha1.cpp: line 5: client.h: команда не найдена
../misc/sha1.cpp: line 6: client.h: команда не найдена
: команда не найденаne 7: *
../misc/sha1.cpp: line 8: client.h: команда не найдена
../misc/sha1.cpp: line 9: client.h: команда не найдена
../misc/sha1.cpp: line 10: client.h: команда не найдена
../misc/sha1.cpp: line 11: syntax error near unexpected token `('
../misc/sha1.cpp: line 11: ` *      2**(n/2) to find any two messages with the s'me digest,
: команда не найденаline 3:
: команда не найденаline 13:
../misc/socket.cpp: line 15: const: команда не найдена
: команда не найденаline 15:
: команда не найденаline 17:
../misc/socket.cpp: line 19: const: команда не найдена
: команда не найденаline 19:
: команда не найденаline 21:
../misc/socket.cpp: line 22: static: команда не найдена
: команда не найденаline 22:
: команда не найденаline 23:
../misc/socket.cpp: line 24: syntax error near unexpected token `SOCKET'
'./misc/socket.cpp: line 24: `Csocket::Csocket(SOCKET s)
: команда не найденаry.cpp: line 3:
: команда не найденаry.cpp: line 7:
../misc/virtual_binary.cpp: line 8: syntax error near unexpected token `const_memory_range'
../misc/virtual_binary.cpp: line 8: `Cvirtual_binary_source::Cvirtual_binary_sou'ce(const_memory_range d)
: команда не найденаine 3:
: команда не найденаine 8:
../misc/xcc_z.cpp: line 9: syntax error near unexpected token `('
'./misc/xcc_z.cpp: line 9: `Cvirtual_binary xcc_z::gunzip(const_memory_range s)
./make.sh: line 11: config.cpp: команда не найдена
./make.sh: line 12: connection.cpp: команда не найдена
./make.sh: line 13: epoll.cpp: команда не найдена
./make.sh: line 14: server.cpp: команда не найдена
./make.sh: line 15: tcp_listen_socket.cpp: команда не найдена
./make.sh: line 16: tracker_input.cpp: команда не найдена
./make.sh: line 17: transaction.cpp: команда не найдена
./make.sh: line 18: udp_listen_socket.cpp: команда не найдена
./make.sh: line 19: XBT Tracker.cpp: команда не найдена
./make.sh: line 20: -rdynamic: команда не найдена
[root@linux Tracker]#
Судя по всему исходники для Red Hat не подходят, жаль.
 
У кого такая ошибка.
Делаем
Code:
root@debian:/home/kenny# cd /home/kenny/xbt/Tracker/
И просто копируем и выполняем все из make.sh
Code:
root@debian:/home/kenny/xbt/Tracker# g++ $@ -DNDEBUG -I ../misc -I . -O3 -o xbt_tracker \
> ../misc/sql/database.cpp \
> ../misc/sql/sql_query.cpp \
> ../misc/sql/sql_result.cpp \
> ../misc/bt_misc.cpp \
> ../misc/bvalue.cpp \
> ../misc/sha1.cpp \
> ../misc/socket.cpp \
> ../misc/virtual_binary.cpp \
> ../misc/xcc_z.cpp \
> config.cpp \
> connection.cpp \
> epoll.cpp \
> server.cpp \
> tcp_listen_socket.cpp \
> tracker_input.cpp \
> transaction.cpp \
> udp_listen_socket.cpp \
> "XBT Tracker.cpp" \
> `mysql_config --libs` && strip xbt_tracker

Как видно ниже я его не конфижил просто собрал
Code:
root@debian:/home/kenny/xbt/Tracker# /etc/init.d/xbt start
Starting XBT Tracker
Unable to read /home/kenny/xbt/Tracker/xbt_tracker.conf
Can't connect to local MySQL server through socket '/var/run/mysqld/mysqld.sock' (2)
1
Для сомневающихся что это действительно дебиан 5
Code:
root@debian:/home/kenny/xbt/Tracker# uname -anr
Linux debian 2.6.32-5-686 #1 SMP Fri Sep 9 20:51:05 UTC 2011 i686 GNU/Linux
root@debian:/home/kenny/xbt/Tracker#
upd
Либо скриптом
Code:
g++ $@ -DEPOLL -DNDEBUG -I ../misc -I . -O3 -o xbt_tracker \
        ../misc/sql/database.cpp \
        ../misc/sql/sql_query.cpp \
        ../misc/sql/sql_result.cpp \
        ../misc/bt_misc.cpp \
        ../misc/bvalue.cpp \
        ../misc/sha1.cpp \
        ../misc/socket.cpp \
        ../misc/virtual_binary.cpp \
        ../misc/xcc_z.cpp \
        config.cpp \
        connection.cpp \
        epoll.cpp \
        server.cpp \
        tcp_listen_socket.cpp \
        tracker_input.cpp \
        transaction.cpp \
        udp_listen_socket.cpp \
        "XBT Tracker.cpp" \
        `mysql_config --libs` && strip xbt_tracker
 
Back
Top