Полное руководство по установке L2J сервера Lineage 2 на Ubuntu

Пошаговый мануал по установке L2J сервера Lineage 2 на Ubuntu с нуля.

Гайды12.06.2026 1

Введение

Создание собственного игрового сервера Lineage 2 — увлекательная задача, требующая внимания к деталям, но при правильном подходе вполне выполнимая даже для начинающего администратора. Платформа L2J представляет собой открытую реализацию серверной части культовой MMORPG, написанную на Java.

В этой статье мы подробно, шаг за шагом, разберём процесс установки и настройки L2J сервера на операционной системе Ubuntu. Вы узнаете, как подготовить среду, скомпилировать сервер из исходных кодов, настроить базу данных MariaDB и запустить свой игровой мир.

Требования к системе:

  • Ubuntu 22.04 LTS или 24.04 LTS

  • Минимум 2 GB оперативной памяти (рекомендуется 4 GB)

  • 20 GB свободного дискового пространства

  • Доступ к терминалу с правами sudo


1. Подготовка серверной среды

Перед началом установки необходимо обновить пакетный менеджер и установить ключевые компоненты: Java Runtime Environment, систему сборки Gradle, клиент Git и сервер баз данных MariaDB.

Откройте терминал и последовательно выполните команды:

bash

sudo apt update && sudo apt upgrade -y
sudo apt install openjdk-21-jdk git wget unzip gradle mariadb-server mariadb-client -y

После завершения установки проверьте версию Java:

bash

java --version

Вывод должен содержать строку openjdk version "21" или новее.

2. Настройка базы данных MariaDB

Сервер L2J использует две базы данных: l2jls (для логин-сервера) и l2jgs (для игрового сервера). Выполните первичную настройку MariaDB:

bash

sudo mysql_secure_installation

Следуйте подсказкам утилиты: установите пароль для root-пользователя, удалите анонимных пользователей, тестовые базы данных и запретите удаленный доступ к root.

Теперь запустите MariaDB и добавьте её в автозагрузку:

bash

sudo systemctl enable mariadb
sudo systemctl start mariadb

Создайте базы данных и пользователя для доступа к ним:

bash

sudo mysql -u root -p

В консоли MySQL выполните следующие SQL-команды (замените 'YOUR_PASSWORD' на надёжный пароль):

sql

CREATE DATABASE l2jls;
CREATE DATABASE l2jgs;
CREATE USER 'l2juser'@'localhost' IDENTIFIED BY 'YOUR_PASSWORD';
GRANT ALL PRIVILEGES ON l2jls.* TO 'l2juser'@'localhost';
GRANT ALL PRIVILEGES ON l2jgs.* TO 'l2juser'@'localhost';
FLUSH PRIVILEGES;
EXIT;

3. Сборка сервера из исходных кодов

Создадим рабочую директорию и загрузим репозитории L2J с GitHub:

bash

mkdir -p ~/l2j/{development,server}
cd ~/l2j/development
git clone https://github.com/L2J/L2J_Server.git
git clone https://github.com/L2J/L2J_Datapack.git

Компиляция ядра сервера

bash

cd ~/l2j/development/L2J_Server
chmod +x gradlew
./gradlew build

Процесс компиляции может занять несколько минут. По завершении готовый архив появится в директории build/distributions.

Компиляция датапака

bash

cd ~/l2j/development/L2J_Datapack
chmod +x gradlew
./gradlew build

Распаковка в рабочую директорию

bash

cd ~/l2j/server
unzip ~/l2j/development/L2J_Server/build/distributions/L2J_Server-*.zip
unzip ~/l2j/development/L2J_Datapack/build/distributions/L2J_Datapack-*.zip -d gameserver/data/

4. Импорт структуры базы данных

Перейдите в директорию сервера и импортируйте SQL-схемы:

bash

cd ~/l2j/server/login
mysql -u l2juser -p l2jls < sql/login.sql
cd ../gameserver
mysql -u l2juser -p l2jgs < sql/gameserver.sql

Система запросит пароль пользователя l2juser, который вы задали на шаге 2.

5. Конфигурация сервера

Настройка подключения к базам данных

Отредактируйте файл конфигурации логин-сервера:

bash

nano ~/l2j/server/login/config/Connectivity.properties

Приведите параметры к следующему виду:

properties

# Database Configuration
Driver = com.mysql.cj.jdbc.Driver
URL = jdbc:mysql://localhost/l2jls?useSSL=false&serverTimezone=UTC
User = l2juser
Password = YOUR_PASSWORD

Аналогично отредактируйте файл игрового сервера:

bash

nano ~/l2j/server/gameserver/config/Connectivity.properties

properties

# Database Configuration
Driver = com.mysql.cj.jdbc.Driver
URL = jdbc:mysql://localhost/l2jgs?useSSL=false&serverTimezone=UTC
User = l2juser
Password = YOUR_PASSWORD

Настройка сетевых параметров

Откройте конфигурацию сети игрового сервера:

bash

nano ~/l2j/server/gameserver/config/Network.properties

Для локального тестирования используйте значения по умолчанию. Для публичного сервера укажите внешний IP-адрес:

properties

GameserverHostname = your_public_ip
GameserverPort = 7777
LoginHost = 127.0.0.1
LoginPort = 9014

Настройка файрвола

Если на сервере активен UFW, откройте необходимые порты:

bash

sudo ufw allow 2106/tcp   # Логин-сервер
sudo ufw allow 7777/tcp   # Игровой сервер
sudo ufw reload

6. Запуск сервера

Сервер Lineage 2 состоит из двух независимых процессов. Для удобства используйте два окна терминала.

Запуск логин-сервера (Terminal 1)

bash

cd ~/l2j/server/login
java -Xms512m -Xmx512m -cp ../libs/*:l2jlogin.jar com.l2jserver.loginserver.L2LoginServer

Запуск игрового сервера (Terminal 2)

bash

cd ~/l2j/server/gameserver
java -Xms1g -Xmx2g -cp ../libs/*:l2jserver.jar com.l2jserver.gameserver.GameServer

Успешный запуск сопровождается сообщениями в консоли:

text

[LoginServer] Loaded 0 stolen keys.
[LoginServer] Login Server ready on *:2106

и

text

[GameServer] GameServer ready. Listening on *:7777

7. Заключение и дальнейшие шаги

Поздравляем! Базовый сервер L2J успешно установлен и запущен на Ubuntu. Теперь вы можете подключиться к нему с клиентской части Lineage 2, указав IP-адрес вашего сервера в системных настройках клиента.

Что можно улучшить?

  • Автоматический запуск: создайте systemd-сервисы для логин-сервера и игрового сервера, чтобы они стартовали автоматически при загрузке системы.

  • Мониторинг: настройте логирование и ротацию логов для отладки.

  • Администрирование: изучите игровые команды L2J, добавьте административные права своему персонажу через базу данных.

  • Производительность: настройте параметры виртуальной машины Java (-Xmx, -Xms) в зависимости от объёма RAM.