Metin2 "Socket Bind Failed" hibamegoldás
A Metin2 PVP szerverek indításakor a csatornák (CH) nem nyílnak meg, a játék bejáratai zárva maradnak, és a magkönyvtárak syserr.txt fájlok törlődnek. "SocketBindBind: bind: A cím már használatban van" vagy "SYSTEM_CMD: socket_bind: sikertelen" Ha figyelmeztetéseket lát, akkor a szerver portütközésbe ütközik. Ebből az útmutatóból megismerheti ennek a problémának az okait és pontos megoldásait.
1. Mi a probléma kiváltó oka?
Minden játékcsatorna (Auth, CH1, CH2, Game99 stb.) egy adott portszámot (pl.: 13000, 13001) foglal el a FreeBSD operációs rendszeren, hogy fogadja a külső lejátszókapcsolatokat. Ha a játékfájljai megpróbálnak újra megnyitni egy portot, amely **már nyitva van és használt** a rendszerben, az "Socket Bind Failed" (Socket Bind Failed) hibaüzenetet ad, és a csatorna bezárul.
2. módszer: MySQL vagy játékfolyamatok bezárása a háttérben
A hiba leggyakoribb oka a kiszolgáló ismételt újraindítása anélkül, hogy teljesen leállna. Az új start parancs hibát ad, mert a háttérben futó régi játékfolyamatok nem zárják be a portokat. A megoldáshoz:
- Csatlakozzon a Putty terminálhoz, és írja be a következő parancsot a háttérben aktív játékfolyamatok felsorolásához:
ps ax | grep game - Ha továbbra is futó játékcsatornákat lát a listában, egyetlen paranccsal zárja le őket teljesen:
killall -9 gamevagykillall -9 db - Miután megbizonyosodott arról, hogy a folyamatok teljesen le vannak zárva, próbálja meg újraindítani a játékot.
3. módszer: Portütközések javítása a CONFIG fájlokban
Ha ez a hibaüzenet az első indításkor még a kiszolgáló tiszta újraindítása után is megjelenik, akkor a fájlokban lévő portszámok ütköznek egymással:
- Csatlakozzon a szerverhez a Filezillával
/usr/game/cores/Menjen a könyvtárba. - ill
auth,channel1,channel2ésgame99mappákban CONFIG Nyissa meg a fájlokat egyesével. - minden fájlban PORT Ellenőrizze az értéket. Például; Ha az Auth port 13000, a Channel1 port 13010, a Channel2 port pedig 13020.
- Győződjön meg arról, hogy **azonos portszám** nincs beírva a CONFIG fájlba két különböző mappába. Ha ugyanaz, adjon neki egy egyedi portszámot, és mentse el a fájlt.
4. módszer: Az alkalmazás észlelése az ütköző határérték és port használatával
A játékfájlokon kívül előfordulhat, hogy a szerverre telepített külső szkript, webpanel vagy védelmi szoftver (Guard) foglalja el a játékportját. Ha meg szeretné tudni, hogy melyik alkalmazás használja a portot:
- Listázza ki az aktív portokat és szolgáltatásokat a következő parancs futtatásával a Putty terminálban:
sockstat -4 -l - A megjelenő listában keresse meg a játék megnyitatlan portszámát, és nézze meg az alkalmazás nevét (folyamatazonosító / név) a bal oldalon. A problémát az ütköző külső szolgáltatás leállításával javíthatja ki.
Ez a cikk kifejezetten a PvPServer számára készült.