Данное руководство по сборке PvPGN 1.8.5 под Linux рассчитано для начинающих. В самом низу текста находится видео, где пошагово и наглядно показан процесс установки на Ubuntu.
Важно понимать, что Linux - это только ядро для операционной системы. Ubuntu, Debian, Gentoo и прочие - это операционные системы, которые используют Linux в основе. Именно поэтому все они между собой более менее совместимы и установка программ на них примерно одинаковая.
(FreeBSD - это не Linux, она основана на ядре BSD и разрабатывается как отдельная единая ОС.)
Основные действия
1. Скачать исходники PvPGN
2. Распаковать tar архив в отдельную папку
tar xf pvpgn-1.8.5.tar.gz
2.1. Установить MySQL, если требуется его поддержка
apt-get install mysql-server mysql-client libmysqlclient-dev
mysql-server - сервер mysql
mysql-client - клиентские утилиты для mysql
libmysqlclient-dev - заголовочные файлы, необходимые для компиляции
Установщики пакетов различные в разных Linux ОС. В Ubuntu это apt-get. Помимо этого, названия пакетов могут отличаться по версии: libmysqlclient15-dev, libmysqlclient16-dev и т.п. Это только в Ubuntu. А для других Linux систем название может быть другое, например, mysql-devel.
Такой вот unix way :)
3. Перейти в папку pvpgn-1.8.5/src и запустить конфигурацию cmake ./configure --with-mysql --prefix="/usr/local/pvpgn"
--with-mysql можно не указывать, если не требуется поддержка MySQL
--prefix тоже можно не указывать, но тогда все папки PvPGN будут скопированы в /usr/local, что, на мой взгляд, неудобно
4. После успешной конфигурации запустить компиляцию
make
make install или
make && make install
5. Папки PvPGN:
bin - утилиты
sbin - файлы для запуска pvpgn (bnetd, d2cs, d2dbs)
etc - конфиги
var - файлы, логи и т.п.
man - инструкция
5. После успешной компиляции отредактировать конфиг (сперва достаточно только servaddrs и storagepath)
nano /usr/local/pvpgn/etc/bnetd.conf
6. Если выбрана бд MySQL, то необходимо создать на сервере пустую базу данных, в которой PvPGN при первом запуске создаст структуру таблиц
mysql -u[user] -p[pass]
create database pvpgn;
quit
7. Не забыть положить support-files в /usr/local/pvpgn/var/files
8. Запустить PvGPN (если путь неполный, то в начале команды запуска пишется точка и слеш)
/usr/local/pvpgn/sbin/bnetd или
cd /usr/local/pvpgn/sbin
./bnetd
9. Смотреть логи less /usr/local/pvpgn/var/bnetd.log
в конце должны быть 2 строчки, сообщающие что сервер готов принимать игроков
[info ] _setup_listensock: listening for bnet connections on 0.0.0.0:6112 TCP
[info ] _setup_listensock: listening for w3route connections on 0.0.0.0:6200 TCP
Полезные командыЧтобы не писать полностью длинное имя папки или файла, удобно нажимать клавишу TAB после нескольких начальных символов, и сработает автодополнение. Это работает как в Unix, так и в командной строке Windows.
В отличие от Windows, в Unix названия папок и файлов зависят от регистра. Например, рядом могут быть созданы 2 совершенно разные папки "Pvpgn" и "pvpgn".
cd [папка] - смена директории
ls - просмотр содержимого текущей папки (можно смотреть в виде таблицы ls -l)
wget [ссылка] - скачивает удаленный файл
tar xf [файл.tar.gz] - распаковывает tar архив в отдельную папку
sudo su - войти с пользователем root (в ubuntu)
rm [файл] - удаляет файл
rm -r [папка] - удаляет папку
mkdir [папка] - создает папку
mv [откуда] [куда] - перемещает данные из одной папки в другую (например, mv * test переместит все файлы из текущей папки в папку test)
ps ax - вывод списка запущенных процессов
ps ax | grep bnetd - можно комбинировать несколько команд вертикальной чертой, в данном случае grep ищет в процессах подстроку "bnetd"
top - просмотр запущенных процессов в реальном времени
nano [файл] - открывает для редактирования файл в консольном текстовом редакторе nano (ctrl+w - поиск внутри файла, ctrl+x - выйти с запросом сохранения файла)
less [файл] - открывает для чтения файл, позволяет просматривать текстовые файлы любого размера (внутри работают клавиши pageup/pagedown/home/end, выход - q)
cat [файл] - вывести содержимое всего файла на консоль (не рекомендуется при больших файлах)
mysql -u[user] -p[pass] -h[host] - соединяется на сервер mysql через консольный клиент
Команды mysql (должны оканчиваться точкой с запятой)
show databases; - показать список баз данных
create database pvpgn; - создать бд с именем "pvpgn"
use [имя_бд]; - выбрать бд с указанным именем
show tables; - показать таблицы у выбранной бд
quit - закрыть соединение с сервером mysql
|