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

Oplossing voor de "Core Dumped"-fout op Metin2-servers

Yazdır

Oplossing voor de "Core Dumped"-fout op Metin2-servers

Een van de fouten die het meest worden gevreesd door Metin2 PVP-serverbeheerders en die een plotselinge sluiting van kanalen veroorzaakt (CH) "Kern gedumpt" (Kerncrash) komt. Deze fout treedt op wanneer de server zichzelf afsluit als gevolg van het tegenkomen van een defecte code die niet kan worden verwerkt in het geheugen (RAM), een ongeldige databasequery of een beschadigd bestand. Hieronder leest u stap voor stap hoe u dit probleem kunt oplossen.

Stap 1: Detecteren welk bestand is gecrasht

Wanneer u de Core dumped-fout krijgt, wordt de server in de gecrashte map geplaatst.game.coreofdb.coreEr blijft een groot bestand achter met de naam . Eerst moeten we de oorzaak van het probleem vinden:

  • Maak verbinding met uw server met Filezilla en navigeer naar de map waar de kanalen zich bevinden (bijvoorbeeld:/usr/game/cores/channel1).
  • in map game.kern Als je het bestand ziet, wordt de fout veroorzaakt door een in-game systeem (C++-broncodes of het gebruik van een onjuiste kaart/item).
  • als/usr/game/cores/dbbinnen db.core Als u het ziet, wordt het probleem volledig veroorzaakt door een corrupte tabel of onjuiste proto-invoer in de Navicat-database.

Stap 2: Foutieve Syserr-uitvoer vastleggen

De Core Dumped-fout laat een kritiek logboek achter in het bestand syserr.txt op het exacte moment dat deze zich voordoet. Om de fout op te lossen:

  1. In de map die core dumpt (bijvoorbeeld: kanaal1) systeem Open het bestand.
  2. Naar de onderste regels van het bestand gaanCRASH,Segmentation FaultofAssertion failedZoek naar de woorden.
  3. De hier geschreven functienaam of artikelcode laat u direct zien welk systeem de server heeft gecrasht. Controleer dit door het laatste systeem of de laatste missie die je hebt toegevoegd uit te schakelen.

Stap 3: Kernbestand analyseren met GDB (technische methode)

Als er niets in het syserr-bestand is geschreven, kunt u GDB (GNU Debugger) op FreeBSD gebruiken om de regel C++-code te vinden die de crash veroorzaakt:

  • Voer de map in waar de crash plaatsvond via Putty:
    cd /usr/game/cores/channel1
  • Start de debugger door de volgende opdracht in de terminal uit te voeren:
    gdb game game.core
  • Wanneer de opdrachtregel wordt geopend, verschijnt deze op het schermbtofwhereTyp het en druk op Enter.
  • In de lijst die op het scherm verschijnt, het broncodebestand en het regelnummer dat de fout heeft veroorzaakt (bijvoorbeeld:char_item.cpp:1452) zal worden vermeld. U moet deze opnieuw opbouwen door deze regel in de Bronsectie te corrigeren.

Stap 4: Bekijk veelvoorkomende fouten

Als u onlangs geen codewijzigingen heeft aangebracht, controleer dan deze twee gevallen:

  • Corruptie van tabellen: De tabellen in de Navicat-spelerdatabase zijn mogelijk beschadigd. Alle tabellen selecteren en met de rechtermuisknop klikken Onderhouden -> Tabellen repareren -> Uitgebreid doe het.
  • Stapeloverloop: Een bug die door de spelers wordt gemaakt (bijvoorbeeld een cheat met onbeperkte slagen, een huisdierbug) kan het geheugen van de server opblazen en core-dumping veroorzaken. Maak gebruik van up-to-date beschermingsinfrastructuren (Guard).

Dit artikel is speciaal opgesteld voor PvPServer.

Bu cevap yeterince yardımcı oldu mu?

Oyla

overlay spinner