Установка и настройка Denora IRC Stats (Статистика IRC) 1 часть

Установка и настройка Denora IRC Stats (Статистика IRC) 1 часть

Решил привязать IRC статистику к своему тестовому серверу, должного мануала на русском не нашел, буду описывать все действия по установке и настройки данного сервиса.

Итак, как обычно система:

FreeBSD localhost.ru 8.0-STABLE FreeBSD 8.0-STABLE, Unreal 3.2.7 + Anope 1.8.5

Создал папку DENORA в каталоге usr, далее закачиваю архив Denora командой:

wget http://prdownloads.sourceforge.net/denora/denora-1.4.4.330.tar.gz?download

Распаковываю архив:

tar -zxvf denora-1.4.4.330.tar.gz

Переходим в папку с Denora:

cd denora

Производить конфигурацию Denora не рекомендуется под root пользователем, поэтому заранее уйдем на уровень ниже под ранее созданного отдельного пользователя для сервисов Denora.

su denora-user

Производим конфигурацию Denora:

./Config

Появляется приглашение конфигуратора:

Statistics for IRC Networks
http://denorastats.org/
Denora-1.4.4.330

This program will help you to compile your Stats software, and ask you
questions regarding the compile-time settings of it during the process.

For more detailed information on the features of Denora 1.4.4 please
read the self-named documentation found on the 'docs' directory.

Beginning Stats configuration.

Note: press Return for the default, or enter a new value.
In what directory do you want the binaries to be installed?
[/usr/DENORA/stats]

Вводим:

/usr/local/libexec/denora

Нажимаем Enter

/usr/local/libexec/denora does not exist.  Create it?
[y]

Нажимаем Enter
Если мы получаем что-то типа такого:

mkdir: /usr/local/libexec/denora: Permission denied

Можно открыть вторую консоль не выходя из конфигуратора, и создать папку denora по пути /usr/local/libexec/, при этом выставив права командой:

mkdir denora
chown -R denora-user:wheel denora

Продолжаем конфигурирование:

[/usr/DENORA/stats] /usr/local/libexec/denora
Where do you want the data files to be installed?
[/usr/local/libexec/denora]

Вводим:

/usr/local/share/denora

Нажимаем Enter

/usr/local/share/denora does not exist.  Create it?
[y]

Нажимаем Enter
Если опять получили:

mkdir: /usr/local/share/denora: Permission denied

поступаем аналогично способу, описанному выше.

[/usr/local/libexec/denora] /usr/local/share/denora

Нажимаем Enter

Which group should all Stats data files be owned by?  (If Stats
should not force files to be owned by a particular group, just press
Return.)
[]

Нажимаем Enter

What should the default umask for data files be (in octal)?
(077 = only accessible by owner; 007 = accessible by owner and group)
[077]

Нажимаем Enter

Allow Denora to automatically check for mysql client development libaries?
unless you get errors with make, there is no need to change this setting.
WARNING: You NEED the mysql client devel libraries installed on your system
in order to compile Denora with SQL support.
On Debian/Ubuntu systems for example, you need to install the
libmysqlclient15-dev package or similar.
[yes]

Тут требуется по сути подтвердить наличие MySQL, нажимаем Enter

Would you like to register your network with Denora?
Doing this will allow us to better focus our project
[no]

Тут по сути требуется подтвердить регистрацию Вашей сети в Denor’e. Нажимаю Enter, так как все же это тестовый сервер

Allow Denora to attempt to build a dmalloc library and use
dmallc memory debuging tools. Should only enable this if
you are attempting to locate memory problems
[no]

Нажимаем Enter

Allow Denora to attempt to build a crypt library so that
admin passwords can be encrypted in the config and db files
[yes]

Нажимаем Enter

Allow Denora to attempt to build a threading library so that
the code can be multithreaded for speed
[yes]

Опять же Enter

Конфигурируемся….

Modules Support: YES
MySQL Support: YES

All done! Above you can see if Modules Support and MySQL Support will be compiled or not.
If you intended to compile MySQL support and you see "NO", then your system is probably
missing the mysql client development libraries. Please consult your distribution package
manager and install the required package, then try running ./Config again.

Now run "make" (or possibly "gmake") to compile Denora.
See the INSTALL, README and FAQ files if you have any problems.

Отлично, собираемся:

make

Нажимаем Enter

*** All done, now (g)make install to install Denora/Modules

отлично, устанавливаем!

make install

Установились довольно быстро, переходим в директорию с конфигами и копируем файл примера конфига в рабочий конфиг:

cd /usr/local/share/denora
cp example.conf denora.conf

Если вы были внимательны, то наверняка увидели, что в установившейся директории есть файлик: example.ru.conf, его я думаю скачать на локальный компьютер, так как консоль не поддерживает шрифт внутри файла, по крайней мере у меня =) Но зато он будет хорошей подсказкой при конфиге.

Редактируем конфиг файл:

Строка 128, настройка подключения к IRC серверу:

connect {
  // required tokens
  hostname    127.0.0.1;
  port        6047;
  passwd      "Denora";
  protocol    unreal32;
};

Так же не забываем прописать в конфиге Unreal:

В у-лайнес дописать:

stats.ваш_хост;

Секция листен:

listen         127.0.0.1:6047
{
	options
	{
		serversonly;
	};
};

Блок линк:

link            stats.ваш_хост
{
	username        *;
	hostname        127.0.0.1;
	bind-ip         *;
	port            6047;
	hub             *;
	password-connect "Denora";
	password-receive "Denora";
	class           servers;
	options {
		autoconnect;
	};
};

Продолжаем редактировать конфиг:

Строка 169:

identity {
	// required tokens
	name        "stats.ваш_хост";
	desc        "Statistics for 24srv.RU IRC Networks";
	user        "stats@24srv.ru";
	language    7;
};

Строка 202, указываем ник бота, запасной ник, псевдо и т.д.:

statserv {
	// required tokens
	nick        "Mr.NoBody";
	real        "Stats Server 24srv.RU";
	// optional tokens
	#aliasnick   "StatServ2";
	#aliasreal   "Stats Server Forwarder";
	autoop;
	automode    "+ov";
	#partonempty;
};

Строка 482, назначение администратора:

admin {
	// required tokens
	name        "Flame_of_Death";
	passwd      "*******";
	hostname    "*@*";
	// optional tokens
	language    7;
};

Строка 534, конфиг MySQL.

sql {
	// required tokens
	type        mysql;
	host        localhost;
	user        Denora;
	passwd      ******;
	name        denora;

	// optional tokens
	#sock        /tmp/mysql.sock;
	#port        3306;
	#retryonlost 0;
	#retries     6;
	#retrygap    10;
	#disableopt;
	#keepusers;
	#keepservers;
};

При этом необходимо создать БД denora и импортировать туда 2 структуры таблиц из /usr/local/share/denora/sql, 1 — denora.sql , 2 — unreal32.sql

Сохраняем конфиг.

Запускаем:

cd /usr/local/libexec/denora
./denorarc start

проверяем

./denorarc status

В случае неудачного запуска логи можно посмотреть тут:

/usr/local/share/denora/logs

В ирц показывается кто и что соединено с Вашим сервером, например при конекте с клиента mIRC есть такая строчка:

I have 1 clients and 2 servers

Что означает в моем случае, что я один сижу на своем сервере + Anope + Denora

Добавления задания в cron на проверку работы Denora
Идем в директорию с Denora и переименовываем файл example.chk: cd /usr/local/share/denora cp example.chk denora.chk Редактируем содержимое файла: Строка 15: # Denora binary directory DENOPATH=/usr/local/libexec/denora/ Сохраняем, переходим в таблицу заданий крона: cd /etc Редактируем файл: crontab Добавляем в него задание: #Denora ICR
Установка и настройка Denora IRC Stats (Статистика IRC) 2 часть
Установка и настройка Denora IRC Stats (Статистика IRC) 1 частьРешил привязать IRC статистику к своему тестовому серверу, должного мануала на русском не нашел, буду описывать все действия по установке и настройки данного сервиса. Итак, как обычно система: FreeBSD localhost.ru 8.0-STABLE FreeBSD 8.0-STABLE, Unreal 3.2.7 + Anope