PvP Server Kiralama & Oyun Sunucuları
0 Giriş Yap Kayıt Ol

Рішення помилки «Core Dumped» на серверах Metin2

Yazdır

Рішення помилки «Core Dumped» на серверах Metin2

Одна з помилок, якої найбільше бояться адміністратори PVP-сервера Metin2 і яка спричиняє раптове закриття каналів (CH) "Core Dumped" (Core Crash) відбувається. Ця помилка виникає, коли сервер вимикається внаслідок виявлення помилкового коду, який він не може обробити в пам’яті (RAM), недійсного запиту до бази даних або пошкодженого файлу. Нижче ви знайдете крок за кроком, як вирішити цю проблему.

Крок 1: Виявлення файлу, який зазнав збою

Коли ви отримуєте повідомлення про помилку Core dumped, сервер поміщається в папку, яка вийшла з ладу.game.coreабоdb.coreВін залишає великий файл під назвою . Спочатку нам потрібно знайти джерело проблеми:

  • Підключіться до свого сервера за допомогою Filezilla та перейдіть до каталогу, де розташовані канали (наприклад:/usr/game/cores/channel1).
  • в папці game.core Якщо ви бачите файл, помилка викликана системою в грі (вихідні коди C++ або використання неправильної карти/елементу).
  • якщо/usr/game/cores/dbв db.core Якщо ви бачите його, проблема цілком спричинена пошкодженою таблицею або неправильним записом прото в базі даних Navicat.

Крок 2. Перехоплення помилкового виводу Syserr

Помилка Core Dumped залишає критичний журнал у файлі syserr.txt точно в секунду, коли вона виникає. Щоб вирішити помилку:

  1. У папці, яка дає дамп ядра (наприклад: канал1) syserr Відкрийте файл.
  2. Перехід до нижніх рядків файлуCRASH,Segmentation FaultабоAssertion failedПошук слів.
  3. Назва функції або код елемента, написані тут, безпосередньо покажуть вам, яка система призвела до збою сервера. Перевірте, вимкнувши останню додану систему або квест.

Крок 3: Аналіз основного файлу за допомогою GDB (технічний метод)

Якщо у файлі syserr нічого не написано, ви можете скористатися GDB (GNU Debugger) у FreeBSD, щоб знайти рядок коду C++, який спричиняє збій:

  • Введіть каталог, де стався збій за допомогою Putty:
    cd /usr/game/cores/channel1
  • Запустіть налагоджувач, виконавши таку команду в терміналі:
    gdb game game.core
  • Коли командний рядок відкривається, він з’являється на екраніbtабоwhereВведіть його та натисніть Enter.
  • У списку, який з’явиться на екрані, файл вихідного коду та номер рядка, який спричинив помилку (наприклад:char_item.cpp:1452) будуть перераховані. Вам слід перебудувати, виправивши цей рядок у розділі «Джерело».

Крок 4: Перегляньте поширені помилки

Якщо ви нещодавно не змінювали код, перевірте ці два випадки:

  • Пошкодження таблиці: Таблиці в базі даних програвача Navicat можуть бути пошкоджені. Вибір усіх таблиць і клацання правою кнопкою миші Обслуговувати -> Відновити таблиці -> Розширено зробити це.
  • Переповнення стека: Помилка, створена гравцями (наприклад, чіт з необмеженою кількістю ударів, помилка з домашніми тваринами) може збільшити пам’ять сервера та спричинити дамп ядра. Використовуйте сучасні інфраструктури захисту (Guard).

Ця стаття спеціально підготовлена для PvPServer.

Bu cevap yeterince yardımcı oldu mu?

Oyla

overlay spinner