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

Solução para o erro “Core Dumped” nos servidores Metin2

Yazdır

Solução para o erro “Core Dumped” nos servidores Metin2

Um dos erros mais temidos pelos administradores do servidor Metin2 PVP e que provoca o fecho repentino de canais (CH) "Núcleo descartado" (Core Crash) vem. Este erro ocorre quando o servidor se desliga como resultado de um código defeituoso que não pode ser processado na memória (RAM), uma consulta de base de dados inválida ou um ficheiro corrompido. Abaixo encontra como resolver este problema passo a passo.

Passo 1: Detetando qual o ficheiro travou

Quando recebe o erro Core dumped, o servidor é colocado na pasta bloqueada.game.coreoudb.coreDeixa um ficheiro grande chamado . Primeiro precisamos de encontrar a origem do problema:

  • Ligue-se ao seu servidor com o Filezilla e navegue até ao diretório onde se encontram os canais (Ex:/usr/game/cores/channel1).
  • na pasta jogo.core Se vir o ficheiro, o erro é causado por um sistema do jogo (códigos-fonte C++ ou utilização de um mapa/item incorreto).
  • se/usr/game/cores/dbem db.core Se vir isto, o problema é completamente causado por uma tabela corrompida ou por uma entrada proto incorreta na base de dados Navicat.

Passo 2: Capturar saída errada do Syserr

O erro Core Dumped deixa um registo crítico no ficheiro syserr.txt exatamente no segundo em que ocorre. Para resolver o erro:

  1. Na pasta que dá core dumped (Ex: canal1) syserr Abra o ficheiro.
  2. Indo para as últimas linhas do ficheiroCRASH,Segmentation FaultouAssertion failedProcure as palavras.
  3. O nome da função ou código do item aqui escrito mostrará directamente qual o sistema que bloqueou o servidor. Verifique desativando o último sistema ou missão que adicionou.

Passo 3: Analisar o ficheiro principal com GDB (método técnico)

Se nada estiver escrito no ficheiro syserr, pode utilizar o GDB (GNU Debugger) no FreeBSD para encontrar a linha de código C++ que está a causar o crash:

  • Introduza o diretório onde ocorreu o crash via Putty:
    cd /usr/game/cores/channel1
  • Inicie o depurador executando o seguinte comando no terminal:
    gdb game game.core
  • Quando a linha de comandos é aberta, aparece no ecrãbtouwhereDigite-o e prima Enter.
  • Na lista que irá aparecer no ecrã, o ficheiro do código fonte e o número da linha que provocou o erro (ex.:char_item.cpp:1452) serão listados. Deve reconstruir corrigindo esta linha na secção Fonte.

Passo 4: Reveja os erros comuns

Se não fez nenhuma alteração ao código recentemente, verifique estes dois casos:

  • Corrupção de Tabela: As tabelas na base de dados do leitor Navicat podem estar corrompidas. Selecionando todas as tabelas e clicando com o botão direito Manter -> Tabelas de Reparação -> Alargado faça isso.
  • Estouro de pilha: Um bug feito pelos jogadores (por exemplo, cheat de acerto ilimitado, bug de estimação) pode inflacionar a memória do servidor e causar dumping de núcleo. Utilizar infraestruturas de proteção atualizadas (Guard).

Este artigo foi preparado especialmente para o PvPServer.

Bu cevap yeterince yardımcı oldu mu?

Oyla

overlay spinner