Назад

[Гайд] Установка eAthena от А до Я под Linux на хостинге Clodo

Автор: Gremlin: Дата: 05.08.2011

Итак, показываю пример установки и настройки eAthena на хостинге . Сразу оговорюсь: в этом гайде пошагово будет описана установка афины на определенном хостинге под определенную ось, без всяких мутных "в других версиях Linux это выглядело бы так-то". Начнем.
Для начала что мы имеем: только что созданную виртуальную машину с операционной системой Ubuntu 10.10 32bit.
1. Соединяемся со своим хостом при помощи . IP Сервера пишется под названием виртуальной машины(Public IP [+/ISP]:, не путать с VNC IP).
2. Вводим имя пользователя root. Пароль пишется во вкладке "информация"(Root default password). Важно: если Вы впервые используете PuTTY, вас может сбить с толку то, что при вводе пароля не пишутся звездочки, или что-то вроде- не пугайтесь, программа работает как нужно, это просто защитная мера. Просто вводите пароль и нажимайте enter. Мы должны получить примерно слудующее:

login as: root
root@62.76.44.218's password:
Linux 13591-6.clodo.ru 2.6.32.26 #1 SMP Fri Mar 4 15:06:19 UTC 2011 i686 GNU/Linux
Ubuntu 10.10

Welcome to Ubuntu!
* Documentation: https://help.ubuntu.com/

The programs included with the Ubuntu system are free software;
the exact distribution terms for each program are described in the
individual files in /usr/share/doc/*/copyright.

Ubuntu comes with ABSOLUTELY NO WARRANTY, to the extent permitted by
applicable law.

root@13591-6:~#

3.
apt-get update

4.
apt-get install php5 phpmyadmin mysql-server mysql-client apache2 gcc libmysqlclient15-dev make zlib1g-dev libpcre3-dev g++
соглашаемся с установкой(y). Далее нам предлагается ввести пароль root для mysql. Внимание! Запомните, а лучше запишите этот пароль! Далее предлагается настроить dbconfig-common, нажимаем no.
5. Заходим на хост с помощью . Мы попали в корневую директорию root, поднимаемся на уровень выше и топаем в etc/apache2/apache2.conf
В самом низу файла дописываем:
Include /etc/phpmyadmin/apache.conf
. В консоли PuTTY исполняем
/etc/init.d/apache2 restart
.
Прверяем, работает ли PhpMyAdmin: через браузер заходим http://ip.хоста/phpmyadmin/
6. В WinSCP топаем в обратно в папку root. Туда закидываем афину, переименовываем папку с афиной в ea(для удобства).
7. В PuTTY:
cd
cd ea
chmod 777 configure
./configure
make clean
make sql
Если всё сделали правильно, сервер начинает компилироваться. В дальнейшем, если нужен рекомпил, пользуемся командой make sql
8. PuTTY:
chmod 777 athena-start
chmod 777 char-server.sh
chmod 777 char-server_sql
chmod 777 map-server.sh
chmod 777 map-server_sql
chmod 777 login-server.sh
chmod 777 login-server_sql

9. WinSCP идем в папку с афиной, настраиваем conf/inter_athena.conf :
// Global SQL settings
// overriden by local settings when the hostname is defined there
// (currently only the login-server reads/obeys these settings)
sql.db_hostname: 127.0.0.1
sql.db_port: 3306
sql.db_username: root
sql.db_password: пароль_из_пункта_4
sql.db_database: ragnarok
sql.codepage:

// MySQL Character SQL server
char_server_ip: 127.0.0.1
char_server_port: 3306
char_server_id: root
char_server_pw: пароль_из_пункта_4
char_server_db: ragnarok

// MySQL Map SQL Server
map_server_ip: 127.0.0.1
map_server_port: 3306
map_server_id: root
map_server_pw: пароль_из_пункта_4
map_server_db: ragnarok

// MySQL Log SQL Database
log_db_ip: 127.0.0.1
log_db_port: 3306
log_db_id: root
log_db_pw: пароль_из_пункта_4
log_db_db: ragnarok
log_codepage:
обратите внимание, log_db_db: ragnarok, т.к. у нас логи будут храниться в той же базе, что и РО.
9. В браузере в PhpMyAdmin создаём базу ragnarok, туда заливаем main.sql и logs.sql(выбираем базу ragnarok, жмем import, показываем путь к файлам sql-files/main.sql и sql-files/logs.sql в папке с афиной)
10. В PuTTY:
./athena-start start
И, наконец-то МЫ ЗАПУСТИЛИ ЭТОТ ЧЁРТОВ СЕРВЕР!!! Ну, если конечно все правильно сделали...:lol:
______________________________________________
Дополнительно:
В клиентинфо указываем IP хоста(это конечно очевидно, но мало-ли:P)
Если мы закрываем окно терминала PuTTY, сервер отключается. Чтобы оставлять сервер включенным:
apt-get install screen

Чтобы отправить окно терминала в детач жмем Ctrl+a+d
Чтобы вернуться в окно терминала
screen -ls
screen -r ID-самого-первого.в.списке-окошка


P.S. ЦП(сайт) ставим в папку var/www/

Автор: imba: Дата: 05.08.2011


chat.c:993: warning: null character(s) ignored
make[1]: *** [obj_sql/chat.o] Error 1
make[1]: Leaving directory `/server/src/map'
make: *** [map_sql] Error 2

Туева хуча варнов.
Сервер как-то особо нужно компилировать?
P.S. в chat.c 400+ строк всего.

Автор: Gremlin: Дата: 05.08.2011

Цитата Renegade;40718]1) найди 10 отличий: [url]http://rus-ea.ru/forum/showthread.php?t=3223[/url:

2) дёргать конфиги апача ненадо, пхпмайадмин и бестого заведётся
3) убунту УГ
4) клодо УГ,


1) Тебе очки, или линзы подарить?
2) Ну да, я просто так написал
3) Ты мне моего друга напоминаешь, который считает недочеловеками всех кто сидит не на FreeBSD. Для сервера афины убунта волне подходит, не будь таким привередливым.
4) Ок. Тебе не нравится- не пользуйся. Лично меня полне устраивает. 99% перебоев связанны с сайтом клодо и личным кабинетом, сами виртуальные машины они не затрагивают. Просто сайт развивается, все время делают новые примочки, что пораждает некоторую нестабильность.

И самое главное: не флуди, я гайд писал не для тебя.

Автор: Gremlin: Дата: 05.08.2011

Цитата imba;40722]

chat.c:993: warning: null character(s) ignored
make[1]: *** [obj_sql/chat.o] Error 1
make[1:
: Leaving directory `/server/src/map'
make: *** [map_sql] Error 2

Туева хуча варнов.
Сервер как-то особо нужно компилировать?


какие срц-моды стоят на сервере?

Автор: imba: Дата: 05.08.2011

В каком смысле срц-моды? Их там много...
В файле chat.c всего 400+ строк! Как такая ошибка вообще получается...

Автор: Gremlin: Дата: 05.08.2011

Ну вот у меня к примеру на первом сервере стояла команда @itemmap. Под Win компилировалось без проблем, а когда на я на геймс-сервис пришел, она выдавала ошибку. Просмотри весь лог компила, на какие строчки ругается.

Автор: imba: Дата: 05.08.2011

Он кучу строк ругает. Почти по всем сорцам пробежался с варнами.

Автор: Gremlin: Дата: 05.08.2011

ты не варны ищи а эрроры

Автор: imba: Дата: 05.08.2011

[SPOILER="Log"]chat.c:973: warning: null character(s) ignored
chat.c:973: warning: null character(s) ignored
chat.c:973: warning: null character(s) ignored
chat.c:973: warning: null character(s) ignored
chat.c:973: warning: null character(s) ignored
chat.c:973: warning: null character(s) ignored
chat.c:973: warning: null character(s) ignored
chat.c:973: warning: null character(s) ignored
chat.c:973: warning: null character(s) ignored
chat.c:973: warning: null character(s) ignored
chat.c:973: warning: null character(s) ignored
chat.c:973: warning: null character(s) ignored
chat.c:973: warning: null character(s) ignored
chat.c:973: warning: null character(s) ignored
chat.c:973: warning: null character(s) ignored
chat.c:973: warning: null character(s) ignored
chat.c:973: warning: null character(s) ignored
chat.c:973: warning: null character(s) ignored
chat.c:973: warning: null character(s) ignored
chat.c:973: warning: null character(s) ignored
chat.c:973: warning: null character(s) ignored
chat.c:973: warning: null character(s) ignored
chat.c:974: warning: null character(s) ignored
chat.c:975: warning: null character(s) ignored
chat.c:975: warning: null character(s) ignored
chat.c:975: warning: null character(s) ignored
chat.c:975: warning: null character(s) ignored
chat.c:975: warning: null character(s) ignored
chat.c:975: warning: null character(s) ignored
chat.c:975: warning: null character(s) ignored
chat.c:975: warning: null character(s) ignored
chat.c:975: warning: null character(s) ignored
chat.c:975: warning: null character(s) ignored
chat.c:975: warning: null character(s) ignored
chat.c:975: warning: null character(s) ignored
chat.c:975: warning: null character(s) ignored
chat.c:975: warning: null character(s) ignored
chat.c:975: warning: null character(s) ignored
chat.c:975: warning: null character(s) ignored
chat.c:975: warning: null character(s) ignored
chat.c:975: warning: null character(s) ignored
chat.c:975: warning: null character(s) ignored
chat.c:975: warning: null character(s) ignored
chat.c:975: warning: null character(s) ignored
chat.c:975: warning: null character(s) ignored
chat.c:975: warning: null character(s) ignored
chat.c:975: warning: null character(s) ignored
chat.c:975: warning: null character(s) ignored
chat.c:975: warning: null character(s) ignored
chat.c:975: warning: null character(s) ignored
chat.c:975: warning: null character(s) ignored
chat.c:975: warning: null character(s) ignored
chat.c:975: warning: null character(s) ignored
chat.c:975: warning: null character(s) ignored
chat.c:975: warning: null character(s) ignored
chat.c:975: warning: null character(s) ignored
chat.c:975: warning: null character(s) ignored
chat.c:975: warning: null character(s) ignored
chat.c:975: warning: null character(s) ignored
chat.c:975: warning: null character(s) ignored
chat.c:975: warning: null character(s) ignored
chat.c:975: warning: null character(s) ignored
chat.c:976: warning: null character(s) ignored
chat.c:977: warning: null character(s) ignored
chat.c:977: warning: null character(s) ignored
chat.c:978: warning: null character(s) ignored
chat.c:979: warning: null character(s) ignored
chat.c:979: warning: null character(s) ignored
chat.c:979: warning: null character(s) ignored
chat.c:979: warning: null character(s) ignored
chat.c:979: warning: null character(s) ignored
chat.c:979: warning: null character(s) ignored
chat.c:979: warning: null character(s) ignored
chat.c:979: warning: null character(s) ignored
chat.c:979: warning: null character(s) ignored
chat.c:979: warning: null character(s) ignored
chat.c:979: warning: null character(s) ignored
chat.c:979: warning: null character(s) ignored
chat.c:979: warning: null character(s) ignored
chat.c:979: warning: null character(s) ignored
chat.c:979: warning: null character(s) ignored
chat.c:979: warning: null character(s) ignored
chat.c:980: warning: null character(s) ignored
chat.c:981: warning: null character(s) ignored
chat.c:982: warning: null character(s) ignored
chat.c:983: warning: null character(s) ignored
chat.c:983: warning: null character(s) ignored
chat.c:983: warning: null character(s) ignored
chat.c:983: warning: null character(s) ignored
chat.c:983: warning: null character(s) ignored
chat.c:983: warning: null character(s) ignored
chat.c:983: warning: null character(s) ignored
chat.c:983: warning: null character(s) ignored
chat.c:983: warning: null character(s) ignored
chat.c:983: warning: null character(s) ignored
chat.c:983: warning: null character(s) ignored
chat.c:983: warning: null character(s) ignored
chat.c:983: warning: null character(s) ignored
chat.c:983: warning: null character(s) ignored
chat.c:983: warning: null character(s) ignored
chat.c:983: warning: null character(s) ignored
chat.c:983: warning: null character(s) ignored
chat.c:983: warning: null character(s) ignored
chat.c:983: warning: null character(s) ignored
chat.c:984: warning: null character(s) ignored
chat.c:985: warning: null character(s) ignored
chat.c:985: warning: null character(s) ignored
chat.c:985: warning: null character(s) ignored
chat.c:985: warning: null character(s) ignored
chat.c:985: warning: null character(s) ignored
chat.c:985: warning: null character(s) ignored
chat.c:985: warning: null character(s) ignored
chat.c:985: warning: null character(s) ignored
chat.c:985: warning: null character(s) ignored
chat.c:985: warning: null character(s) ignored
chat.c:985: warning: null character(s) ignored
chat.c:985: warning: null character(s) ignored
chat.c:985: warning: null character(s) ignored
chat.c:985: warning: null character(s) ignored
chat.c:985: warning: null character(s) ignored
chat.c:985: warning: null character(s) ignored
chat.c:985: warning: null character(s) ignored
chat.c:985: warning: null character(s) ignored
chat.c:985: warning: null character(s) ignored
chat.c:985: warning: null character(s) ignored
chat.c:985: warning: null character(s) ignored
chat.c:985: warning: null character(s) ignored
chat.c:985: warning: null character(s) ignored
chat.c:985: warning: null character(s) ignored
chat.c:985: warning: null character(s) ignored
chat.c:985: warning: null character(s) ignored
chat.c:985: warning: null character(s) ignored
chat.c:985: warning: null character(s) ignored
chat.c:985: warning: null character(s) ignored
chat.c:985: warning: null character(s) ignored
chat.c:985: warning: null character(s) ignored
chat.c:985: warning: null character(s) ignored
chat.c:985: warning: null character(s) ignored
chat.c:985: warning: null character(s) ignored
chat.c:985: warning: null character(s) ignored
chat.c:985: warning: null character(s) ignored
chat.c:985: warning: null character(s) ignored
chat.c:985: warning: null character(s) ignored
chat.c:985: warning: null character(s) ignored
chat.c:985: warning: null character(s) ignored
chat.c:985: warning: null character(s) ignored
chat.c:985: warning: null character(s) ignored
chat.c:985: warning: null character(s) ignored
chat.c:986: warning: null character(s) ignored
chat.c:987: warning: null character(s) ignored
chat.c:988: warning: null character(s) ignored
chat.c:989: warning: null character(s) ignored
chat.c:989: warning: null character(s) ignored
chat.c:989: warning: null character(s) ignored
chat.c:989: warning: null character(s) ignored
chat.c:989: warning: null character(s) ignored
chat.c:989: warning: null character(s) ignored
chat.c:989: warning: null character(s) ignored
chat.c:989: warning: null character(s) ignored
chat.c:989: warning: null character(s) ignored
chat.c:990: warning: null character(s) ignored
chat.c:991: warning: null character(s) ignored
chat.c:991: warning: null character(s) ignored
chat.c:992: warning: null character(s) ignored
chat.c:993: warning: null character(s) ignored
make[1]: *** [obj_sql/chat.o] Error 1
make[1]: Leaving directory `/server/src/map'
make: *** [map_sql] Error 2
[/SPOILER]
Там строк даже таких нету в этом файле!
До этого сервер был компилирован в debug'овом режиме.

Автор: imba: Дата: 05.08.2011

Как можно выключать сервер?

Автор: Renegade: Дата: 05.08.2011

выключателем.

Автор: imba: Дата: 05.08.2011

Хорошо. Какой командой нужно выключать сервер?
VNC Ip нужно в конфигах писать?

Автор: Renegade: Дата: 05.08.2011

ну если старт сервера

./athena-start start


то как думаешь, как стоп?

Автор: imba: Дата: 05.08.2011

Спасибо за гайд.
Все свои ошибки исправил.

Автор: imba: Дата: 05.12.2011

Как компилировать не под sql, а debug режим.