/* СТИЛИ СТИЛИ СТИЛИ СТИЛИ СТИЛИ СТИЛИ СТИЛИ СТИЛИ СТИЛИ ССТИЛИ */

[#DCBEELINEKZ] БИЛАЙН ХАБЫ КАЗАХСТАН

Информация о пользователе

Привет, Гость! Войдите или зарегистрируйтесь.


Вы здесь » [#DCBEELINEKZ] БИЛАЙН ХАБЫ КАЗАХСТАН » RASPBERRY PI (МИНИ ПК) » Хостинг DC хаба (PtokaX) в Rpi


Хостинг DC хаба (PtokaX) в Rpi

Сообщений 1 страница 6 из 6

1

Hosting a DC hub can be irritating sometimes as it needs to be kept online 24×7 and also it can be resource hungry as number of users connecting to the hub increases.

http://dhruvvyas.com/blog/wp-content/uploads/2015/02/image_rpi_dc.jpg

https://pp.vk.me/c629630/v629630063/402f6/3xdfyBBjqXI.jpg

image_rpi_dc

In this post, we will see how a PtokaX DC++ hub can be hosted on a Raspberry Pi (or any other SBC / PC running a Debian based OS).

In this post, I am not gonna go into detail how to connect Rpi to the network and all that stuff as I assume Rpi is already configured and running a raspbian image. I also assume that you already have hub config files and scripts ready (/cfg and /scripts folders).

Steps:

1. Installing necessary dependencies and tools.

sudo apt-get -y install make g++ zlib1g-dev liblua5.1-dev liblua5.2-dev liblua5.1-sql-mysql-2 liblua5.1-sql-mysql-dev

Установка под linux (протестировано на Debian):
Устанавливаем утилиты, библиотеки и модули Lua:
aptitude -y install g++ make zlib1g zlib1g-dev lua5.1 liblua5.1-0 liblua5.1-0-dev liblua5.1-filesystem0 liblua5.1-socket2 lua5.1-socket

2. Getting PtokaX unix source

Код:
wget http://www.PtokaX.org/files/0.5.0.2-nix-src.tgz

3. Extracting tar

Код:
tar -xf 0.5.0.2-nix-src.tgz

4. Compiling source

Код:
cd PtokaX

make

After successful compilation, copy existing config files (cfg folder) and necessary lua scripts (scripts folder) to PtokaX home path.

Change necessary details like server ip address and other by modifying Settings.xml file.

After making necessary changes, start PtokaX from terminal by typing…

Код:
sudo ./PtokaX

See if it is working.

You can add it to rc.local if you want to enable it every time Rpi boots up.

(Ref: link1, link2, link3)

I hope it helps.

Drop comments in case of any problems / difficulties. I will try my best to solve.

Happy hacking.

2

http://wiki.ptokax.org/doku.php?id=guid … n_bugbuntu

3

В каталоге "root/PtokaX/cfg" должны быть все нижеперечисленные файлы
BanList.xml
Motd.txt
RegisteredUsers.xml
Scripts.xml
ClientTags.xml
Profiles.xml
ReservedNicks.xml
Settings.xml

4

1. Устанавливаю необходимые для работы dc-хаба компоненты: apt-get install -y make g++ zlib1g-dev liblua5.1-dev libtinyxml-dev liblua5.1-socket liblua5.1-filesystem
2. Для работы некоторых скриптов мне нужны socket и filesystem. Вам они возможно не нужны - смотрите сами.
3. Скачиваем исходники: wget http://www.ptokax.org/files/0.5.0.2-nix-src.tgz
4. Распаковываем: tar -xf 0.5.0.2-nix-src.tgz
5. Переходим в подкаталог PtokaX
6. Собираем бинарник командой make
7. Закидываю ранее забекапленные конфиги, скрипты в отдельную созданную папку /var/ptokax, дабы не смешивать бинарники и конфиги в одну кучу
8. Запускаю хаб командой: /etc/ptokax/PtokaX/PtokaX -d -c /var/ptokax

5

Основная настройка хаба

Перед запуском сборки PtokaX необходимо сделать минимальные настройки.
В установленной PtokaX есть образцы файлов настройки хаба.

Для переименования папки с образцами настроек в файл настроек cfg.example надо использовать команду:

mv cfg.example cfg
Для перехода в папку с настройками:

cd cfg
a. Минимальная настройка
Для запуска PtokaX надо, как минимум, написать название хаба и указать адрес хаба.
Откроем файл Setting.xml в текстовом редакторе:

vim Settings.xml
Измененить название хаба
Находим строку
<String Name=“HubName”>&lt;Enter hub name here&gt;</String>
и изменяем
&lt;Enter hub name here&gt;
на название вашего хаба.
Например:
<String Name=“HubName”>Мой первый хаб на PtokaX</String>

Изменить адрес хаба
Находим строку
<String Name=“HubAddress”>&lt;Enter hub address here&gt;</String>
и изменяем
&lt;Enter hub address here&gt;
на адрес вашего хаба.
Например:
<String Name=“HubAddress”>ch6.ru</String>

b. Добавление зарегистрированного пользователя (Дополнительная настройка)
Неплохой идеей будет сразу добавить учётную запись мастер-пользователя.
Открываем файл RegisteredUsers.xml в текстовом редакторе:

vim RegisteredUsers.xml
Добавить ник
Находим строку
<Nick>Example_Nick</Nick>
и изменяем
Example_Nick
на ваш ник.
Например:
<Nick>СуперАдмин</Nick>

Добавить пароль
Находим строку
<Password>Example_Password</Password>
и изменяем
Example_Password
на ваш пароль.
Например:
<Password>123456</Password>

Установить профиль
Находим строку
<Profile>3</Profile>
и устанавливаем
0
для вашего профиля. (0 — мастер, 1 — оператор, 2 — VIP, 3 — зарегистрированный пользователь)

Например:
<Profile>0</Profile>

Запуск PtokaX

a. Запуск PtokaX как приложения из консоли с актуальной папкой cfg
Старт PtokaX
команда из консоли:

./PtokaX
b. Запуск PtokaX как daemon
Запуск PtokaX как daemon
Старт PtokaX из директории по умолчанию (/home/%curuser%/.PtokaX) командой:

./PtokaX -d
Запуск PtokaX как daemon с указанием директории
Запуск PtokaX как daemon с указанием директории для запуска нескольких хабов из одной PtokaX с различными настройками хабов:

./PtokaX -d -c /home/myPtokaXhub

6

Далее идем ниже по мануалу и читаем как сделать, чтобы хаб автостартовал при загрузке.
Собрав же хаб вы сталкнетесь с проблемой - вы не сможете его запускать автоматически.... Можно извращаться по разному, но я предлагаю самый простой способ - это добавить хаб в Init.d и забыть о проблемах. Хаб будет стартовать как служба.

Чтобы это сделать, необходимо:
Скачать и скомпилировать хаб.
Переименовать полученный исполняемый файл в ptokax и переместить в /usr/sbin
После этого (убрав расширение .txt) кидаем файл в /etc/init.d b и в консоли выполняем

Код:
update-rc.d ptokax defaults

Иногда может потребоваться параметр -f

Код:
update-rc.d -f ptokax defaults

все, ссылки на автозапуск добавлены в rc.d хаб стартанет при запуске системы, используя в качестве рабочей директориии ту, что вы прописали в скрипте автозапуска. В нее нужно скинуть настройки хаба, скрипты, там же стои искать логи....

Код:
#!/bin/sh
# Start/stop/restart the services for PtokaX.
PTOKAXPATH='/etc/ptokax'

ptokax_start() {
if [ `ps ax | grep "ptokax -d -c $PTOKAXPATH" | grep -v "grep" | wc -l` = 0 ]; then
/usr/sbin/ptokax -d -c $PTOKAXPATH
if [ `ps ax | grep "ptokax -d -c $PTOKAXPATH" | grep -v "grep" | wc -l` = 0 ]; then
ANSWER='[FAIL]'
else
ANSWER='[OK]'
fi
echo "Starting PtokaX $ANSWER"
else
echo "DC PtokaX HuB server is already running... Start failed!"
fi
}
ptokax_stop() {
if [ `ps ax | grep "ptokax -d -c $PTOKAXPATH" | grep -v "grep" | wc -l` = 0 ]; then
echo "DC PtokaX HuB server isn't running... Stop failed!"
else
kill `ps xu | grep "ptokax" | grep "$PTOKAXPATH" | grep -v "grep" | awk '{print $2}'`
if [ `ps ax | grep "ptokax -d -c $PTOKAXPATH" | grep -v "grep" | wc -l` = 0 ]; then
ANSWER='[OK]'
else
ANSWER='[FAIL]'
fi
echo "Stoping PtokaX $ANSWER"
fi
}
ptokax_restart() {
if [ `ps ax | grep "ptokax -d -c $PTOKAXPATH" | grep -v "grep" | wc -l` = 0 ]; then
/usr/sbin/ptokax -d -c $PTOKAXPATH
else
kill `ps xu | grep "ptokax" | grep "$PTOKAXPATH" | grep -v "grep" | awk '{print $2}'`
/usr/sbin/ptokax -d -c $PTOKAXPATH
fi
if [ `ps ax | grep "ptokax -d -c $PTOKAXPATH" | grep -v "grep" | wc -l` = 0 ]; then
ANSWER='[FAIL]'
else
ANSWER='[OK]'
fi
echo "Restarting PtokaX $ANSWER"
}
ptokax_status() {
if [ `ps ax | grep "ptokax -d -c $PTOKAXPATH" | grep -v "grep" | wc -l` = 0 ]; then
echo "No DC PtokaX HuB running..."
else
echo "DC PtokaX HuB server running..."
fi
}

case "$1" in
'start')
ptokax_start
;;
'stop')
ptokax_stop
;;
'status')
ptokax_status
;;
'restart')
ptokax_restart
;;
*)
# Default is "start", for backwards compatibility with previous
echo "start|stop|status|restart"
esac

Вы здесь » [#DCBEELINEKZ] БИЛАЙН ХАБЫ КАЗАХСТАН » RASPBERRY PI (МИНИ ПК) » Хостинг DC хаба (PtokaX) в Rpi