Soluție la eroarea „Core Dumped” pe serverele Metin2
Una dintre erorile cele mai de temut de către administratorii serverului Metin2 PVP și care provoacă închiderea bruscă a canalelor (CH) „Miezul aruncat” (Core Crash) vine. Această eroare apare atunci când serverul se oprește ca urmare a întâlnirii unui cod defect pe care nu îl poate procesa în memorie (RAM), a unei interogări de bază de date nevalidă sau a unui fișier corupt. Mai jos puteți găsi cum să rezolvați această problemă pas cu pas.
Pasul 1: Detectarea ce fișier s-a prăbușit
Când primiți eroarea Core dump, serverul este plasat în folderul prăbușit.game.coresaudb.coreLasă un fișier mare numit . Mai întâi trebuie să găsim sursa problemei:
- Conectați-vă la serverul dvs. cu Filezilla și navigați la directorul în care se află canalele (Ex:
/usr/game/cores/channel1). - în dosar joc.core Dacă vedeți fișierul, eroarea este cauzată de un sistem din joc (coduri sursă C++ sau utilizarea unei hărți/articole incorecte).
- dacă
/usr/game/cores/dbin db.core Dacă îl vedeți, problema este cauzată complet de un tabel corupt sau de o intrare proto incorectă în baza de date Navicat.
Pasul 2: Capturarea ieșirii Syserr eronate
Eroarea Core Dumped lasă un jurnal critic în fișierul syserr.txt exact în secunda în care apare. Pentru a rezolva eroarea:
- În folderul care oferă core dumed (Ex: canal1) syserr Deschideți fișierul.
- Mergeți la rândurile de jos ale fișierului
CRASH,Segmentation FaultsauAssertion failedCăutați cuvintele. - Numele funcției sau codul articolului scris aici vă va arăta direct ce sistem a blocat serverul. Verificați dezactivând ultimul sistem sau ultima misiune adăugată.
Pasul 3: analiza fișierului de bază cu GDB (metodă tehnică)
Dacă nu este scris nimic în fișierul syserr, puteți utiliza GDB (GNU Debugger) pe FreeBSD pentru a găsi linia de cod C++ care a cauzat blocarea:
- Introduceți directorul în care a avut loc accidentul prin Putty:
cd /usr/game/cores/channel1 - Porniți depanatorul rulând următoarea comandă în terminal:
gdb game game.core - Când linia de comandă este deschisă, aceasta apare pe ecran
btsauwhereTastați-l și apăsați Enter. - În lista care va apărea pe ecran, fișierul codului sursă și numărul liniei care a cauzat eroarea (de ex.:
char_item.cpp:1452) vor fi listate. Ar trebui să reconstruiți corectând această linie în secțiunea Sursă.
Pasul 4: Examinați greșelile frecvente
Dacă nu ați făcut nicio modificare a codului recent, verificați aceste două cazuri:
- Corupție la masă: Tabelele din baza de date a jucătorilor Navicat pot fi corupte. Selectând toate tabelele și făcând clic dreapta Întreține -> Tabele de reparații -> Extins fă-o.
- Depășire stivă: O eroare creată de jucători (de exemplu, cheat de lovire nelimitat, bug de companie) poate umfla memoria serverului și poate cauza dumping de bază. Utilizați infrastructuri de protecție la zi (Guard).
Acest articol este pregătit special pentru PvPServer.