فروش فوری 50% تخفیف روی همه سرورها آخرین روز!
پایان در: 00D 00H 00M 00S
background image
Game Servers 380 7 Days to Die 4 Abiotic Factor 2 Aloft 2 alt:V 2 Americas Army Proving Grounds 2 Among Us 2 Archean 2 ARK Survival Ascended 6 ARK Survival Evolved 3 Arma 3 3 Arma Reforger 2 Aska 2 AssaultCube 2 Assetto Corsa 3 Astro Colony 2 Astroneer 2 Automobilista 2 2 Avorion 2 Banana Shooter 2 Barotrauma 3 BATTALION Legacy 2 BeamNG.drive (BeamMP) 2 Black Mesa 2 Brickadia 2 Call of Duty 2 Citadel: Forged with Fire 2 ClassiCube 2 Clone Hero 2 Colony Survival 2 Conan Exiles 4 Contagion 2 Core Keeper 2 Counter-Strike 2 3 Craftopia 2 CryoFall 2 CS2D 2 Cube 2: Sauerbraten 2 Cubic Odyssey 2 DayZ 4 DDNet 2 DDRaceNetwork 2 Dead Matter 2 Dont Starve Together 4 Eco 2 Empyrion Galactic Survival 2 Enshrouded 3 Escape from Tarkov 2 Euro Truck Simulator 2 2 Factorio 2 Farming Simulator 25 2 Fistful of Frags 2 FiveM 3 FortressCraft Evolved 2 Foundry 2 Foundry VTT 2 Frozen Flame 2 FTL Tachyon 2 Garrys Mod 3 Ground Branch 2 Half-Life 2 Deathmatch 2 Hogwarp 2 Holdfast: Nations at War 2 HumanitZ 2 Hurtworld 2 Hytale 1 Icarus 2 Insurgency Sandstorm 2 IOSoccer 2 Just Cause 3 Multiplayer 2 Kerbal Space Program 2 Killing Floor 2 3 LeagueSandbox 2 Left 4 Dead 2 Left 4 Dead 2 3 Longvinter 2 Los Angeles Crimes 2 Medal of Honor 2 Midnight Ghost Hunt 2 Mindustry 2 Minecraft 4 Minetest 2 Modiverse 2 Mordhau 3 Mount & Blade II: Bannerlord 2 Myth of Empires 2 Nazi Zombies Portable 2 Necesse 2 NeosVR 2 Neverwinter Nights EE 2 Night of the Dead 2 Nightingale 2 No Love Lost 2 No More Room in Hell 2 No One Survived 2 Nova-Life Amboise 2 Nuclear Option 2 Onset 2 Open Fortress 2 OpenArena 2 OpenRA 2 OpenRCT2 2 OpenTTD 2 Operation Harsh Doorstop 2 Palworld 3 Path of Titans 2 Pavlov VR 3 PixARK 2 Plains of Pain 2 Portal Knights 2 Post Scriptum 2 Project Zomboid 8 Puck 2 Quake Live 2 R5Reloaded 2 RedM 2 Renown 2 Resonite 2 Return to Moria 2 Rimworld Together 2 Rising World 2 Risk of Rain 2 1 Rust 4 Satisfactory 1 SCP Secret Laboratory 3 SCUM 2 Smalland 2 Solace Crafting 2 Soldat 2 Soldat 2 2 Sonic Robo Blast 2 2 Sons of the Forest 2 Soulmask 2 SourceCoop 2 Space Engineers 3 Space Station 14 2 Squad 3 Starbound 3 StarMade 2 Stationeers 2 Stormworks 2 Subnautica Nitrox 2 Sunkenland 2 SuperTuxKart 2 Sven Co-op 2 Swords 'n Magic and Stuff 2 Team Fortress 2 3 Teeworlds 2 Terraria 3 TerraTech Worlds 2 TF2 Classified 2 The Forest 3 The Front 2 The Isle 2 Tower Unite 2 Trackmania 2 Unturned 4 Urban Terror 2 V Rising 3 Valheim 3 VEIN 2 Veloren 2 Vintage Story 3 Voyagers of Nera 2 Wolfenstein: Enemy Territory 2 Wreckfest 2 Wurm Unlimited 2 Xonotic 2 Zandronum 2 Getting Started 2 Network & Connectivity 1 Server Management 2
دسته‌بندی‌ها

رفع کرش‌های سرور Project Zomboid

FA zomboid pz crash memory 0 نفر این مقاله را مفید یافتند

سرورهای Project Zomboid می‌توانند به دلایل شناخته‌شده‌ای کرش کنند یا شروع نشوند. این راهنما رایج‌ترین علل مشاهده‌شده در تیکت‌های پشتیبانی Legion Hosting را پوشش می‌دهد — از یک باگ حافظه در Build 42 که نیاز به RAM اضافی هنگام راه‌اندازی دارد، تا پر شدن /tmp توسط پشتیبان‌گیری بیش از حد، تا فایل‌های پیکربندی خراب. بخش‌های زیر را به ترتیب بررسی کنید.

این راهنما فقط کرش‌های سمت سرور را پوشش می‌دهد. اگر سرور شما در حال اجراست و بازیکنان در بازی دچار کرش یا فریز می‌شوند، لاگ‌های کرش بازی را در کامپیوتر محلی خود بررسی کنید. اگر اصلاً نمی‌توانید متصل شوید ولی سرور در حال اجراست، به نحوه اتصال به سرور Project Zomboid مراجعه کنید.

قبل از شروع — لاگ‌های کرش خود را پیدا کنید

تقریباً هر کرش Project Zomboid در یکی از دو مکان اثری از خود به جا می‌گذارد. قبل از انجام هرگونه اقدام اصلاحی، هر دو را بررسی کنید تا بدانید کدام بخش از این راهنما برای شما مناسب است.

خروجی کنسول GPanel

  1. وارد GPanel شوید.
  2. سرور Project Zomboid خود را از لیست سرورها انتخاب کنید.
  3. روی تب Console کلیک کنید.
  4. به پایین خروجی اسکرول کنید. به دنبال خطوطی باشید که با ERROR، FATAL، OutOfMemoryError یا Exception مشخص شده‌اند. ۲۰ تا ۳۰ خط آخر قبل از توقف سرور معمولاً مرتبط‌ترین خطوط هستند.
  5. اگر کنسول خالی است، فرآیند سرور قبل از اینکه بتواند چیزی بنویسد متوقف شده — این خود یک سرنخ است (به بخش حافظه B42 در زیر مراجعه کنید).

فایل debug.log سرور

Project Zomboid یک لاگ جزئی در فایل debug.log در دایرکتوری داده‌های سرور می‌نویسد. این فایل اغلب شامل یک stack trace کامل Java است که مستقیماً به علت کرش اشاره می‌کند.

  1. در GPanel، به تب File Manager بروید.
  2. به مسیر /.cache/Logs/ بروید. فایل‌هایی با نام‌هایی مانند debug.log، DebugLog-server.txt یا فایل‌های لاگ با تاریخ را خواهید دید.
  3. جدیدترین فایل لاگ را باز کنید. از Ctrl+End استفاده کنید یا تا انتها اسکرول کنید و از آنجا به بالا بخوانید.
  4. به دنبال کلمات کلیدی OutOfMemoryError، IOException، NullPointerException یا SandboxVars بگردید. خطوط مرتبط را کپی کنید — اگر تیکت پشتیبانی باز کنید به آن‌ها نیاز خواهید داشت.

راه‌حل ۱ — مصرف بالای حافظه Build 42 هنگام راه‌اندازی (باگ شناخته‌شده بازی)

مشکل شناخته‌شده Build 42: Project Zomboid B42 (به طور خاص نسخه 42.x) یک باگ حافظه تأیید شده دارد که در آن سرور تقریباً ۹ گیگابایت RAM هنگام راه‌اندازی مصرف می‌کند، حتی در جهان‌های کوچک بدون بازیکن. این به طور قابل توجهی بیشتر از B41 است و یک باگ در خود بازی است، نه یک خطای پیکربندی.

اگر سرور شما بلافاصله هنگام راه‌اندازی بدون خطا در کنسول متوقف می‌شود، یا کنسول OutOfMemoryError یا خطای Java heap space نشان می‌دهد، سرور قبل از اتمام بارگذاری جهان حافظه‌اش تمام شده است.

علائم

  • سرور شروع می‌شود، کنسول چند ثانیه اسکرول می‌کند، سپس بدون خطای قابل مشاهده برای بازیکنان متوقف می‌شود.
  • کنسول java.lang.OutOfMemoryError: Java heap space یا GC overhead limit exceeded نشان می‌دهد.
  • سرور در برخی ریستارت‌ها کار می‌کند ولی در برخی دیگر نه (در دسترس بودن حافظه متغیر است).
  • سرور روی B41 خوب کار می‌کرد ولی بعد از ارتقا به B42 به طور مداوم کرش می‌کند.

مراحل

  1. در GPanel، روی سرور خود کلیک کنید و به تب Console بروید. مقدار RAM فعلی تخصیص‌یافته سرور را که در نوار منابع یا پنل اطلاعات سرور نشان داده می‌شود یادداشت کنید.
  2. اگر پلن شما کمتر از ۱۰ گیگابایت RAM دارد، سرور ممکن است هنگام راه‌اندازی کرش کند زیرا B42 برای مقداردهی اولیه تقریباً ۹ گیگابایت نیاز دارد. باید پلن خود را ارتقا دهید یا منتظر بمانید تا Indie Stone یک اصلاحیه منتشر کند.
  3. اگر پلن شما ۱۰ گیگابایت یا بیشتر دارد و سرور همچنان هنگام راه‌اندازی کرش می‌کند، به تب Startup در GPanel بروید.
  4. به دنبال فیلدی با برچسب Java Memory، Max RAM یا Xmx بگردید. مطمئن شوید که بیشتر از ۸۰ تا ۸۵ درصد کل RAM موجود تنظیم نشده است. به عنوان مثال، در یک پلن ۱۲ گیگابایتی، این مقدار را روی 10240 (۱۰ گیگابایت بر حسب مگابایت) تنظیم کنید. آن را برابر یا بیشتر از کل RAM تنظیم نکنید — سیستم‌عامل و سایر فرآیندها نیز به حافظه نیاز دارند.
  5. روی Save در تب Startup کلیک کنید، سپس سرور خود را ریستارت کنید.
  6. کنسول را هنگام راه‌اندازی مشاهده کنید. اگر سرور به خط SERVER STARTED برسد یا LuaManager: Loading lua files... بدون کرش کامل شود، تخصیص حافظه اکنون کافی است.
چرا B42 به این مقدار RAM نیاز دارد؟ Build 42 نقشه‌ای به طور قابل توجهی گسترش‌یافته با ساختمان‌های چند طبقه معرفی کرد. هنگام راه‌اندازی، سرور بخش‌های بزرگی از فهرست نقشه و Lua sandbox را یکجا در حافظه بارگذاری می‌کند. Indie Stone این موضوع را به عنوان حوزه‌ای که فعالانه در حال بهینه‌سازی آن هستند تأیید کرده‌اند. اخبار Project Zomboid در Steam را برای پچ‌هایی که مصرف حافظه هنگام راه‌اندازی را کاهش می‌دهند دنبال کنید.

راه‌حل ۲ — پر شدن /tmp توسط BackupsOnStart (کرش هنگام راه‌اندازی)

Project Zomboid می‌تواند طوری پیکربندی شود که هر بار که سرور شروع می‌شود یک پشتیبان کامل از جهان ایجاد کند. وقتی این پشتیبان در /tmp نوشته می‌شود — که در اکثر هاست‌های Linux حجم محدودی دارد — سرور هنگام راه‌اندازی با خطای نوشتن روی دیسک کرش می‌کند وقتی /tmp پر شود.

علائم

  • سرور در هر ریستارت به طور مداوم کرش می‌کند، ولی قبلاً کار می‌کرد.
  • کنسول یا debug.log شامل خطاهایی مانند IOException: No space left on device یا اشاره به نوشتن در /tmp/ است.
  • کرش‌ها با گذشت زمان بدتر می‌شوند زیرا حجم ذخیره جهان بزرگ‌تر می‌شود.
  • سرور گاهی اوقات اگر کمی بعد از ریبوت تمیز نود هاست تلاش کنید شروع می‌شود (قبل از اینکه /tmp دوباره پر شود).

مراحل — غیرفعال کردن BackupsOnStart

  1. در GPanel، به تب File Manager بروید.
  2. به مسیر /.cache/server/ بروید. به دنبال فایل پیکربندی سرور خود بگردید — معمولاً با نام servertest.ini یا هر چیزی که نام سرور شماست به همراه .ini (مثلاً MyServer.ini).
  3. فایل .ini را برای ویرایش باز کنید.
  4. از قابلیت جستجوی مرورگر خود (Ctrl+F) برای جستجوی BackupsOnStart استفاده کنید.
  5. مقدار را از true به false تغییر دهید:
    BackupsOnStart=false
  6. همچنین در فایل، تنظیم BackupsOnVersionChange را بررسی کنید و اگر فضای دیسک نگرانی شماست آن را روی false تنظیم کنید:
    BackupsOnVersionChange=false
  7. فایل را ذخیره کنید و سرور خود را ریستارت کنید. کنسول را مانیتور کنید تا تأیید شود که سرور به خط SERVER STARTED می‌رسد.
پشتیبان‌گیری دستی: غیرفعال کردن پشتیبان‌گیری خودکار به این معنی است که باید از داده‌های جهان خود به صورت دستی پشتیبان بگیرید. برای این کار، از File Manager در GPanel استفاده کنید و به طور دوره‌ای یک کپی از پوشه /.cache/saves/multiplayer/ دانلود کنید، یا با پشتیبانی Legion Hosting تماس بگیرید تا درباره گزینه‌های پشتیبان‌گیری زمان‌بندی‌شده در پلن خود بپرسید.

راه‌حل ۳ — خرابی SandboxVars.lua یا پیکربندی سرور

Project Zomboid تنظیمات جهان را در یک فایل Lua به نام SandboxVars.lua ذخیره می‌کند. اگر این فایل به صورت دستی ویرایش شود و با خطای نحوی ذخیره شود، یا اگر انتقال فایل قطع شده باشد، سرور بلافاصله هنگام راه‌اندازی وقتی تلاش می‌کند فایل را تجزیه کند کرش خواهد کرد.

علائم

  • کنسول ERROR: SandboxVars، LuaManager error یا یک خطای تجزیه Lua با شماره خط نشان می‌دهد.
  • کرش دقیقاً بعد از اینکه تنظیمات را در فایل .ini یا مستقیماً در SandboxVars.lua ویرایش کردید شروع شده است.
  • سرور ممکن است Bad argument #1 to یا خطاهای مشابه runtime در Lua نشان دهد.

مراحل — بررسی و تعمیر SandboxVars.lua

  1. در GPanel، به File Manager بروید و به مسیر /.cache/saves/multiplayer/<YourServerName>/ بروید.
  2. SandboxVars.lua را برای ویرایش باز کنید.
  3. بررسی کنید که فایل با VERSION = 1, (یا مشابه) در داخل یک بلوک SandboxVars = { شروع شود و با یک } بسته شود. هر کاما فراموش‌شده، آکولاد بسته‌نشده، یا کاراکتر اضافی باعث خطای تجزیه می‌شود.
  4. اگر نمی‌توانید خطا را شناسایی کنید، امن‌ترین راه‌حل حذف کامل SandboxVars.lua است. سرور آن را با مقادیر پیش‌فرض در راه‌اندازی بعدی بازسازی خواهد کرد. توجه: این کار تنظیمات sandbox شما (غنیمت، تعداد زامبی‌ها و غیره) را به حالت پیش‌فرض بازنشانی می‌کند — داده‌های نقشه و بازیکنان شما تحت تأثیر قرار نمی‌گیرند.
  5. همچنین فایل .ini در /.cache/server/ را برای مشکلات مشابه بررسی کنید اگر اخیراً آن را به صورت دستی ویرایش کرده‌اید. مطمئن شوید هر خط از فرمت Key=Value پیروی می‌کند و خط خالی داخل یک مقدار وجود ندارد.
  6. تغییرات را ذخیره کنید و سرور را ریستارت کنید.
توصیه: از ویرایش مستقیم SandboxVars.lua خودداری کنید. در عوض، از پنل ادمین درون بازی یا رابط تنظیمات سرور در GPanel در صورت موجود بودن استفاده کنید. ویرایش‌های مستقیم مستعد خطا هستند و می‌توانند با یک کامای فراموش‌شده سرور را خراب کنند.

راه‌حل ۴ — رمز عبور خالی ادمین باعث کرش می‌شود

Project Zomboid برای شروع یک سرور چندنفره به یک رمز عبور ادمین غیرخالی نیاز دارد. اگر فیلد رمز عبور خالی باشد، فرآیند سرور بلافاصله پس از تلاش برای مقداردهی اولیه حساب ادمین متوقف می‌شود.

علائم

  • سرور کاملاً جدید یا سرور اخیراً بازنشانی‌شده در هر تلاش شروع شکست می‌خورد.
  • خروجی کنسول بسیار کوتاه است — سرور چند خط مقداردهی اولیه چاپ می‌کند و سپس متوقف می‌شود.
  • debug.log ممکن است شامل ارجاع به حساب ادمین یا اعتبارسنجی رمز عبور باشد.

مراحل

  1. در GPanel، روی سرور خود کلیک کنید و به تب Startup بروید.
  2. به دنبال فیلدی با برچسب Admin Password یا RCON Password بگردید. مطمئن شوید که حاوی مقدار است — نباید خالی باشد.
  3. اگر فیلد خالی است، یک رمز عبور وارد کنید. حداقل ۸ کاراکتر استفاده کنید. از کاراکترهای خاص مانند !، #، $ یا @ در رمز عبور ادمین خودداری کنید، زیرا برخی نسخه‌های PZ آن‌ها را در آرگومان‌های راه‌اندازی به درستی تجزیه نمی‌کنند.
  4. روی Save کلیک کنید و سرور را ریستارت کنید.
  5. به عنوان بررسی ثانویه، فایل .ini در /.cache/server/ را باز کنید و تأیید کنید که خط AdminPassword= بعد از علامت مساوی مقداری دارد.

راه‌حل ۵ — بازنشانی جهان (آخرین راه‌حل برای کرش‌های مداوم)

این عمل تمام پیشرفت جهان را برای همیشه حذف می‌کند. شخصیت‌های بازیکنان، ساختمان‌ها، وضعیت غنیمت و تغییرات نقشه از بین خواهند رفت. حساب‌های بازیکنان (لیست سفید، لیست مسدودشدگان) به طور جداگانه ذخیره می‌شوند و تحت تأثیر قرار نمی‌گیرند. فقط در صورتی این کار را انجام دهید که همه راه‌حل‌های دیگر شکست خورده‌اند و آماده شروع یک جهان جدید هستید.

اگر ذخیره جهان خراب شود — مثلاً بعد از کرش سخت سرور، آپدیت ناموفق یا خطاهای سیستم فایل — داده‌های ذخیره ممکن است غیرقابل بازیابی باشند. در این حالت، حذف جهان و شروع از نو تنها گزینه است.

مراحل

  1. سرور خود را در GPanel قبل از ایجاد هرگونه تغییر در فایل‌های ذخیره متوقف کنید. ویرایش فایل‌ها روی سرور در حال اجرا می‌تواند باعث خرابی بیشتر شود.
  2. در GPanel، به تب File Manager بروید.
  3. به مسیر /.cache/saves/multiplayer/ بروید.
  4. یک یا چند پوشه با نام سرور خود (مثلاً servertest) خواهید دید. قبل از حذف، اختیاری پوشه را به عنوان پشتیبان با انتخاب آن و استفاده از گزینه دانلود، دانلود کنید — حتی یک ذخیره خراب ممکن است بعداً تا حدی قابل بازیابی باشد.
  5. پوشه مطابق با نام سرور خود در داخل Multiplayer/ را حذف کنید. خود پوشه Multiplayer را حذف نکنید.
  6. همچنین به /.cache/db/ بروید و فایل <YourServerName>.db را حذف کنید. این پایگاه داده آمار بازیکنان را نگه می‌دارد و ممکن است به جهان قدیمی ارجاع دهد — بازسازی آن از عدم تطابق جلوگیری می‌کند.
  7. سرور خود را شروع کنید. یک جهان تازه با استفاده از تنظیمات فایل .ini شما تولید خواهد شد.
تنظیمات خود را حفظ کنید: حذف ذخیره جهان، پیکربندی سرور شما را حذف نمی‌کند. فایل .ini، رمز عبور ادمین، لیست مادها و تنظیمات پورت همه حفظ می‌شوند. راه‌اندازی بعدی دقیقاً از همان تنظیمات برای ایجاد جهان جدید استفاده خواهد کرد.

مرجع سریع تشخیصی

آنچه در لاگ می‌بینید محتمل‌ترین علت راه‌حل
OutOfMemoryError یا Java heap space RAM ناکافی برای راه‌اندازی B42 راه‌حل ۱ — باگ حافظه B42
IOException: No space left on device پر شدن /tmp توسط BackupsOnStart راه‌حل ۲ — BackupsOnStart
خطای SandboxVars یا خطای تجزیه Lua فایل پیکربندی خراب یا ویرایش‌شده دستی راه‌حل ۳ — SandboxVars.lua
سرور بلافاصله متوقف می‌شود، خروجی کنسول بسیار کوتاه رمز عبور خالی ادمین راه‌حل ۴ — رمز عبور ادمین
کرش مداوم صرف‌نظر از تغییرات پیکربندی ذخیره جهان خراب راه‌حل ۵ — بازنشانی جهان

بعد از تمام مراحل همچنان کرش می‌کند؟

اگر سرور شما بعد از انجام تمام راه‌حل‌های بالا همچنان کرش می‌کند، یک تیکت پشتیبانی با Legion Hosting باز کنید. موارد زیر را برای کمک به تیم پشتیبانی جهت تشخیص سریع مشکل ارسال کنید:

  • ۵۰ خط آخر خروجی کنسول GPanel در زمان کرش
  • محتوای کامل جدیدترین فایل debug.log یا DebugLog-server.txt
  • نسخه build سرور Project Zomboid شما (در کنسول هنگام راه‌اندازی نشان داده می‌شود، مثلاً Build 42.x.x)
  • تخصیص RAM شما همان‌طور که در GPanel نشان داده می‌شود
  • آیا کرش در هر راه‌اندازی رخ می‌دهد یا فقط بعد از اینکه سرور مدتی در حال اجرا بوده
  • هرگونه تغییراتی که قبل از شروع کرش انجام دادید (افزودن ماد، ویرایش پیکربندی، آپدیت بازی)

یک تیکت پشتیبانی باز کنید و شناسه سرور و پیام‌های خطا از کنسول GPanel را ارسال کنید.


آیا این مقاله مفید بود؟

Ready to Get Started?

The servers are booted, select your plan and become our latest satisfied client.