Иконка ресурса

Установка сервера Lineage 2 Interlude на Ubuntu 18.04 в Hyper-V

Нет прав для скачивания
Недавно скинул тестовую инструкцию по установе сервера interlude через
Свой домашний сервер Lineage 2 Interlude (Часть 1)
Авто-развертывание сервера L2 interlude через Docker (Ubuntu 18.04 - Тест Часть 3),
Скачать:
Screenshot_1.webp

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

Эта настройка проходила через Hyper-V если установка будет без нее можно начинать с 3 части.
пароль от архива: Poloman.pro (Возможно с маленькой буквы)

Часть 1: Создание виртуальной машины в Hyper-V
1.1 Создание ВМ
  1. Откройте Диспетчер Hyper-V.
  2. Нажмите СоздатьВиртуальная машина.
  3. Имя: L2Server (или любое другое).
  4. Поколение: 1 (важно для совместимости первый раз делал на 2 - но позже были проблемы).
  5. Память: Запуск – 4096 МБ, минимальная – 2048 МБ, максимальная – 8192 МБ.
  6. Процессор: 4 виртуальных процессора.
  7. Сеть: Пока оставить Not Connected (настроим позже).
  8. Жёсткий диск: 40–50 ГБ, динамически расширяемый.
  9. Установка: Выберите Установить ОС из образа ISO и укажите файл
    ubuntu-18.04.6-live-server-amd64.iso.
  10. Перед запуском: В настройках ВМ удалите "Дисковод гибких дисков"
    (чтобы избежать ошибок при загрузке).
1.2 Установка Ubuntu Server 18.04
  1. Запустите ВМ и начните установку.
  2. Язык/Раскладка: На ваш выбор.
  3. Сеть: Оставьте DHCP (IP настроим позже).
  4. Прокси/Зеркало: Оставьте пустыми (стандартные).
  5. Разметка диска: Выберите Use An Entire Disk и снимите галочку с
    Set up this disk as an LVM group.
  6. Профиль:
    • Имя сервера: l2server
    • Имя пользователя: hallow (или другое)
    • Пароль: придумайте надёжный
  7. SSH-сервер: Обязательно поставьте галочку [X] Install OpenSSH server.
  8. Snaps (дополнительное ПО): Ничего не выбирать.
Дождитесь завершения установки и перезагрузитесь.
Часть 2: Настройка сети и системы
2.1 Настройка статического IP

После установки подключите – сетевую карту.
войдите в систему и выполните:
Код:
ip a
Запомните имя интерфейса (обычно eth0). Настройте статический IP через Netplan:
Код:
sudo nano /etc/netplan/01-netcfg.yaml
Вставьте:
Код:
network:
  version: 2
  renderer: networkd
  ethernets:
    eth0:
      dhcp4: false
      addresses:
        - 192.168.*.*/24
      gateway4: 192.168.2.1
      nameservers:
        addresses: [8.8.8.8, 1.1.1.1]
      gateway4: 192.168.2.1
      nameservers:
       addresses: [8.8.8.8, 1.1.1.1]

Примените:
Код:
sudo netplan apply
Проверьте: ip a – должен быть IP 192.168.*.*. global – не Dynamic

2.2 Обновление системы
Код:
sudo apt update && sudo apt upgrade –y
Часть 3: Установка необходимого ПО
3.1 Установка утилит и Java 8
Код:
sudo apt install unzip unrar –y
Код:
sudo apt install openjdk-8-jdk –y
Проверьте: java -version – должно показать 1.8.0_....

3.2 Установка MySQL
Код:
sudo apt install mysql-server –y

3.3 Настройка безопасности MySQL
Код:
sudo mysql_secure_installation
  • Validate password plugin? → n
  • New password: придумайте пароль (например, StrongRootPass123)
  • Re-enter: повторите
  • Remove anonymous users? → Y
  • Disallow root login remotely? → Y
  • Remove test database? → Y
  • Reload privilege tables? → Y
3.4 Создание базы данных и пользователя для L2
Код:
sudo mysql -u root -p

Введите пароль root и выполните:
Код:
CREATE DATABASE interlude CHARACTER SET utf8 COLLATE utf8_general_ci;
CREATE USER 'l2juser'@'localhost' IDENTIFIED BY 'Poloman';
GRANT ALL PRIVILEGES ON interlude.* TO 'l2juser'@'localhost';
FLUSH PRIVILEGES;
EXIT;
3.5 Настройка удалённого доступа к MySQL (для Navicat с хоста)
Код:
sudo nano /etc/mysql/mysql.conf.d/mysqld.cnf
Найдите строку bind-address = 127.0.0.1 и закомментируйте:
Код:
# bind-address = 127.0.0.1
Сохраните (Ctrl+O, Enter, Ctrl+X).

Дайте права пользователю l2juser из локальной сети:
Код:
sudo mysql -u root -p
GRANT ALL PRIVILEGES ON interlude.* TO 'l2juser'@'192.168.2.%' IDENTIFIED BY 'Poloman';
FLUSH PRIVILEGES;
EXIT;
Перезапустите MySQL:
Код:
sudo systemctl restart mysql

3.6 Настройка брандмауэра (UFW)
Код:
sudo ufw allow 22/tcp
sudo ufw allow 2106/tcp
sudo ufw allow 7777/tcp
sudo ufw allow 3306/tcp
sudo ufw enable
sudo ufw status
Часть 4: Развёртывание серверной сборки
4.1 Создание папки для сервера
Код:
 sudo mkdir /srv/l2server
Код:
sudo chown -R hallow:hallow /srv/l2server
4.2 Загрузка и распаковка архива
Через FileZilla (SFTP, порт 22, пользователь hallow) загрузите архив Lineage 2 server.rar в /home/hallow/.

В консоли Ubuntu:
Код:
 cd /home/hallow
Код:
 unrar x 'Lineage 2 server.rar' -ppoloman.pro
После распаковки переместите содержимое в /srv/l2server:
Код:
# Если папка называется Lineage 2 server
mv /home/hallow/Lineage\ 2\ server/* /srv/l2server/
# Или если Interlude
mv /home/hallow/Interlude/* /srv/l2server/
Проверьте структуру:
Код:
ls /srv/l2server
Должны быть папки authserver и gameserver.
Часть 5: Импорт базы данных
5.1 Импорт GameServer
Код:
 cd /srv/l2server/gameserver/sql/
Код:
for file in install/*.sql; do echo "Importing $file ..."; mysql -u l2juser -p'Poloman' interlude < "$file"; done
5.2 Импорт AuthServer
Код:
 cd /srv/l2server/authserver/sql/
Код:
mysql -u l2juser -p'Poloman' interlude < install/account_log.sql
Код:
mysql -u l2juser -p'Poloman' interlude < install/accounts.sql
Код:
mysql -u l2juser -p'Poloman' interlude < install/gameservers.sql
5.3 Регистрация гейм-сервера в базе
Код:
sudo mysql -u root -p
Код:
USE interlude;
INSERT INTO gameservers (server_id, host) VALUES (1, '192.168.*.*');
EXIT;
Часть 6: Настройка конфигурационных файлов
6.1 Настройка AuthServer
Код:
nano /srv/l2server/authserver/config/authserver.properties
Проверьте/задайте:
Код:
DatabaseUser = l2juser
DatabasePassword = Poloman
(Если есть параметр ExternalHostname, укажите 192.168.*.*)
6.2 Настройка GameServer
Код:
 nano /srv/l2server/gameserver/config/server.properties
Задайте:
Код:
ExternalHostname = 192.168.*.*
InternalHostname = 192.168.*.*
DatabaseUser = l2juser
DatabasePassword = Poloman

6.3 Права на выполнение скриптов
[CODE]chmod +x /srv/l2server/authserver/*.sh
Код:
chmod +x /srv/l2server/gameserver/*.sh
Часть 7: Запуск сервера
7.1 Запуск AuthServer (в первом терминале SSH)
Код:
cd /srv/l2server/authserver
Код:
java -server -Dfile.encoding=UTF-8 -Xmx256m -cp config:./* l2.authserver.AuthServer
Ждите: появится Listening for clients on *:2106.

7.2 Запуск GameServer (во втором терминале SSH)
Код:
cd /srv/l2server/gameserver
Код:
java -server -Dfile.encoding=UTF-8 -Xmx3G -cp config:./* l2.gameserver.GameServer
Дождитесь полной загрузки: появится GameServer Started и Registered on authserver as 1.

7.3 Проверка работы
Код:
sudo ss -tlpn | grep java
Должны быть порты: 2106 (Auth), 9014 (внутренний), 7777 (Game).
Часть 8: Настройка клиента
8.1 Подготовка клиента
  1. Установите чистый клиент Lineage 2 Interlude.
  2. Замените папку system на ту, что идёт в комплекте со сборкой.
8.2 Редактирование l2.ini
  • Скачайте и установите L2FileEdit.
  • Откройте system/l2.ini.
  • Найдите строку ServerAddr= и измените на:
Код:
ServerAddr=192.168.*.*
  • Сохраните.
8.3 Авторегистрация

В большинстве сборок включена авторегистрация – просто введите любой логин и пароль при входе.
Часть 9: Проверка и устранение проблем
9.1 Если клиент не видит сервер
  • Проверьте IP в l2.ini.
  • Проверьте брандмауэр на хосте (Windows) – разрешите порты 2106 и 7777.
  • Проверьте server.properties – правильный ли IP в ExternalHostname.
9.2 Если ошибка "Access denied" в консоли GameServer
  • Проверьте пароль в server.properties – должен быть Poloman.
9.3 Если сервер не стартует из-за ошибки "Table doesn't exist"
  • Проверьте, что база называется interlude.
  • Запустите повторный импорт SQL-файлов из папок authserver/sql/install/ и gameserver/sql/install/.
Часть 10: Управление сервером
10.1 Остановка сервера
В любом терминале (Можно в третьем):
Код:
sudo killall java
10.2 Автозапуск (опционально)
Можно создать systemd-сервис.
Создание systemd-сервиса для автозапуска сервера L2
1. Создайте управляющий скрипт /usr/local/bin/l2_control.sh

Этот скрипт будет запускать и останавливать оба сервера (Auth и Game) одной командой.
Код:
sudo nano /usr/local/bin/l2_control.sh
Вставьте следующий код (проверьте пути и классы — они соответствуют вашей сборке):
Код:
#!/bin/bash
case "$1" in
  start)
    echo "Запуск AuthServer..."
    (cd /srv/l2server/authserver && java -server -Dfile.encoding=UTF-8 -Xmx256m -cp config:./* l2.authserver.AuthServer) &
    sleep 5
    echo "Запуск GameServer..."
    (cd /srv/l2server/gameserver && java -server -Dfile.encoding=UTF-8 -Xmx3G -cp config:./* l2.gameserver.GameServer) &
    echo "Серверы запущены."
    ;;
  stop)
    echo "Остановка серверов L2..."
    killall java
    echo "Серверы остановлены."
    ;;
  *)
    echo "Использование: $0 {start|stop}"
    exit 1
    ;;
esac
exit 0
Сделайте скрипт исполняемым:
Код:
sudo chmod +x /usr/local/bin/l2_control.sh

2. Создайте файл службы /etc/systemd/system/l2server.service
Код:
sudo nano /etc/systemd/system/l2server.service
Вставьте следующее содержимое (замените User= (на ваше имя пользователя, если оно другое):
Код:
[Unit]
Description=Lineage 2 Interlude Server
After=network.target mysql.service

[Service]
Type=forking
User=hallow
WorkingDirectory=/srv/l2server
ExecStart=/usr/local/bin/l2_control.sh start
ExecStop=/usr/local/bin/l2_control.sh stop
Restart=on-failure

[Install]
WantedBy=multi-user.target

3. Обновите systemd и включите автозапуск
Код:
sudo systemctl daemon-reload
Код:
sudo systemctl enable l2server.service

4. Управление сервером через systemctl
Теперь вы можете управлять сервером стандартными командами:
ДействиеКоманда
Запуститьsudo systemctl start l2server
Остановитьsudo systemctl stop l2server
Перезапуститьsudo systemctl restart l2server
Проверить статусsudo systemctl status l2server
Посмотреть логиsudo journalctl -u l2server -f

5. Проверка
После перезагрузки системы сервер запустится автоматически. Чтобы убедиться, что всё работает, выполните:
Код:
sudo systemctl status l2server
Вы должны увидеть active (running) и сообщения о запуске Auth и Game серверов.

✅ Дополнительные советы
  • Если при запуске возникают ошибки (например, не найден класс), проверьте пути в скрипте и убедитесь, что вы находитесь в правильной директории.
  • Для просмотра полного лога (включая stdout/stderr) используйте journalctl -u l2server -n 50 --no-pager.
  • Если вы хотите отключить автозапуск: sudo systemctl disable l2server
Автор
Hallow
Скачиваний
6
Просмотры
223
Первый выпуск
Обновление

Рейтинги

0,00 звёзд 0 оценок

Другие ресурсы пользователя Hallow

Назад
Сверху Снизу