Project Zomboid -palvelimet voivat kaatua tai jättää käynnistymättä useista tunnetuista syistä. Tämä opas käsittelee yleisimpiä syitä, joita Legion Hostingin tukipyynnöissä on havaittu — Build 42 -muistivirheestä, joka vaatii ylimääräistä RAM-muistia käynnistyksessä, varmuuskopioiden ylivuotoon, joka täyttää /tmp-kansion, ja vioittuneisiin määritystiedostoihin. Käy alla olevat osiot läpi järjestyksessä.
Ennen kuin aloitat — Etsi kaatumislokit
Lähes jokainen Project Zomboid -kaatuminen jättää jäljen toiseen kahdesta paikasta. Tarkista molemmat ennen minkään korjauksen yrittämistä, jotta tiedät, mikä tämän oppaan osio koskee sinua.
GPanel-konsolin tuloste
- Kirjaudu sisään GPaneliin.
- Valitse Project Zomboid -palvelimesi palvelinlistasta.
- Napsauta Console-välilehteä.
- Selaa tulosteen alaosaan. Etsi rivejä, joissa lukee
ERROR,FATAL,OutOfMemoryErrortaiException. Viimeiset 20–30 riviä ennen palvelimen pysähtymistä ovat yleensä merkityksellisimpiä. - Jos konsoli on tyhjä, palvelinprosessi päättyi ennen kuin se ehti kirjoittaa mitään — tämä on itsessään vihje (katso alla oleva B42-muistiosio).
Palvelimen debug.log-tiedosto
Project Zomboid kirjoittaa yksityiskohtaisen lokin debug.log-tiedostoon palvelimen tietohakemistossa. Tämä tiedosto sisältää usein täydellisen Java-pinojäljen, joka osoittaa suoraan kaatumisen syyhyn.
- Mene GPanelissa File Manager -välilehdelle.
- Siirry hakemistoon
/.cache/Logs/. Näet tiedostoja, joiden nimet ovat esimerkiksidebug.log,DebugLog-server.txttai päivättyjä lokitiedostoja. - Avaa uusin lokitiedosto. Käytä Ctrl+End tai selaa aivan alaosaan ja lue sieltä ylöspäin.
- Etsi avainsanoja
OutOfMemoryError,IOException,NullPointerExceptiontaiSandboxVars. Kopioi olennaiset rivit — tarvitset niitä, jos avaat tukipyynnön.
Korjaus 1 — Build 42:n korkea muistinkäyttö käynnistyksessä (tunnettu pelivirhe)
Jos palvelimesi sulkeutuu välittömästi käynnistyksen yhteydessä ilman virhettä konsolissa tai konsoli näyttää OutOfMemoryError- tai Java-keon tilavirheen, palvelimelta loppuu muisti ennen kuin maailman lataus on valmis.
Oireet
- Palvelin käynnistyy, konsoli vierittyy muutaman sekunnin ja pysähtyy ilman pelaajalle näkyvää virhettä.
- Konsoli näyttää
java.lang.OutOfMemoryError: Java heap spacetaiGC overhead limit exceeded. - Palvelin toimii joillakin uudelleenkäynnistyksillä mutta ei toisilla (muistin saatavuus vaihtelee).
- Palvelin toimi hyvin B41:ssä, mutta kaatuu johdonmukaisesti B42:een päivittämisen jälkeen.
Vaiheet
- Napsauta GPanelissa palvelintasi ja mene Console-välilehdelle. Huomaa palvelimesi nykyinen RAM-varaus, joka näkyy resurssipalkissa tai palvelimen tietopaneelissa.
- Jos pakettisi sisältää vähemmän kuin 10 Gt RAM-muistia, palvelin voi kaatua käynnistyksen aikana, koska B42 vaatii noin 9 Gt alustukseen. Sinun on päivitettävä pakettisi tai odotettava, että Indie Stone julkaisee korjauksen.
- Jos paketissasi on jo 10 Gt tai enemmän ja palvelin kaatuu silti käynnistyksessä, mene Startup-välilehdelle GPanelissa.
- Etsi kenttä, jonka nimi on Java Memory, Max RAM tai Xmx. Varmista, että se on asetettu enintään 80–85 %:iin käytettävissä olevasta kokonais-RAM-muististasi. Esimerkiksi 12 Gt:n paketissa aseta se arvoon
10240(10 Gt megatavuissa). Älä aseta sitä yhtä suureksi tai suuremmaksi kuin kokonais-RAM — käyttöjärjestelmä ja muut prosessit tarvitsevat myös muistia. - Napsauta Save Startup-välilehdellä ja käynnistä palvelin uudelleen.
- Tarkkaile konsolia käynnistyksen aikana. Jos palvelin saavuttaa rivin
SERVER STARTEDtaiLuaManager: Loading lua files...valmistuu kaatumatta, muistivaraus on nyt riittävä.
Korjaus 2 — BackupsOnStart ylittää /tmp:n (kaatuminen käynnistyksessä)
Project Zomboid voidaan määrittää luomaan täysi maailman varmuuskopio joka kerta, kun palvelin käynnistyy. Kun tämä varmuuskopio kirjoitetaan /tmp-kansioon — jonka koko on rajoitettu useimmilla Linux-isännillä — palvelin kaatuu kesken käynnistyksen levynkirjoitusvirheeseen, kun /tmp täyttyy.
Oireet
- Palvelin kaatuu luotettavasti jokaisella uudelleenkäynnistyksellä, mutta toimi aiemmin.
- Konsoli tai
debug.logsisältää virheitä, kutenIOException: No space left on devicetai mainintoja kirjoittamisesta/tmp/-kansioon. - Kaatumiset pahenevat ajan myötä, kun maailman tallennus kasvaa.
- Palvelin käynnistyy joskus, jos yrität pian isäntäsolmun puhtaan uudelleenkäynnistyksen jälkeen (ennen kuin
/tmptäyttyy uudelleen).
Vaiheet — Poista BackupsOnStart käytöstä
- Mene GPanelissa File Manager -välilehdelle.
- Siirry hakemistoon
/.cache/server/. Etsi palvelimesi määritystiedosto — sen nimi on tyypillisestiservertest.initai palvelimesi nimi, jota seuraa.ini(esim.MyServer.ini). - Avaa
.ini-tiedosto muokkausta varten. - Käytä selaimen hakutoimintoa (Ctrl+F) etsiäksesi
BackupsOnStart. - Muuta arvo
truearvoonfalse:BackupsOnStart=false - Tarkista tiedostossa myös
BackupsOnVersionChange-asetus ja aseta se arvoonfalse, jos levytila on huolenaihe:BackupsOnVersionChange=false - Tallenna tiedosto ja käynnistä palvelin uudelleen. Tarkkaile konsolia varmistaaksesi, että palvelin saavuttaa
SERVER STARTED-rivin.
/.cache/saves/multiplayer/-kansiosta säännöllisesti, tai ota yhteyttä Legion Hosting -tukeen kysyäksesi paketissasi käytettävissä olevista ajastetuista varmuuskopiointivaihtoehdoista.
Korjaus 3 — Vioittunut SandboxVars.lua tai palvelimen määritys
Project Zomboid tallentaa maailman asetukset Lua-tiedostoon nimeltä SandboxVars.lua. Jos tätä tiedostoa muokataan manuaalisesti ja tallennetaan syntaksivirheellä, tai jos tiedostonsiirto keskeytyi, palvelin kaatuu välittömästi käynnistyksessä, kun se yrittää jäsentää tiedoston.
Oireet
- Konsoli näyttää
ERROR: SandboxVars,LuaManager errortai Lua-jäsennysvirheen rivinumerolla. - Kaatuminen alkoi tapahtua heti sen jälkeen, kun muokkasit asetuksia
.ini-tiedostossa taiSandboxVars.lua-tiedostossa suoraan. - Palvelin saattaa näyttää
Bad argument #1 totai vastaavia Lua-suoritusaikavirheitä.
Vaiheet — Tarkista ja korjaa SandboxVars.lua
- Mene GPanelissa File Manager -välilehdelle ja siirry hakemistoon
/.cache/saves/multiplayer/<YourServerName>/. - Avaa
SandboxVars.luamuokkausta varten. - Tarkista, että tiedosto alkaa
VERSION = 1,(tai vastaavalla)SandboxVars = {-lohkon sisällä ja päättyy sulkevaan}-merkkiin. Mikä tahansa puuttuva pilkku, sulkematon aaltosulku tai harhautunut merkki aiheuttaa jäsennysvian. - Jos et voi tunnistaa virhettä, turvallisin korjaus on poistaa
SandboxVars.luakokonaan. Palvelin luo sen uudelleen oletusarvoilla seuraavassa käynnistyksessä. Huomaa: tämä nollaa hiekkalaatikkoasetuksesi (saalis, zombimäärä jne.) oletusarvoihin — karttadataasi ja pelaajadataasi ei vaikuteta. - Tarkista myös
.ini-tiedosto kansiossa/.cache/server/samanlaisten ongelmien varalta, jos olet hiljattain muokannut sitä käsin. Varmista, että jokainen rivi noudattaaKey=Value-muotoa ilman tyhjiä rivejä arvon sisällä. - Tallenna muutokset ja käynnistä palvelin uudelleen.
SandboxVars.lua-tiedoston muokkaamista suoraan. Käytä sen sijaan pelin sisäistä admin-paneelia tai GPanelin palvelinasetusten käyttöliittymää, jos saatavilla. Suorat muokkaukset ovat virhealttiita ja voivat rikkoa palvelimen yhdellä puuttuvalla pilkulla.
Korjaus 4 — Tyhjä admin-salasana aiheuttaa kaatumisen
Project Zomboid vaatii ei-tyhjän admin-salasanan moninpelipalvelimen käynnistämiseen. Jos salasanakenttä on tyhjä, palvelinprosessi sulkeutuu välittömästi, kun se yrittää alustaa admin-tilin.
Oireet
- Aivan uusi palvelin tai hiljattain nollattu palvelin epäonnistuu joka käynnistysyrityksellä.
- Konsolitulos on hyvin lyhyt — palvelin tulostaa muutaman alustusrivin ja sitten pysähtyy.
debug.logsaattaa sisältää viittauksen admin-tiliin tai salasanan vahvistukseen.
Vaiheet
- Napsauta GPanelissa palvelintasi ja mene Startup-välilehdelle.
- Etsi kenttä, jonka nimi on Admin Password tai RCON Password. Varmista, että se sisältää arvon — se ei saa olla tyhjä.
- Jos kenttä on tyhjä, syötä salasana. Käytä vähintään 8 merkkiä. Vältä erikoismerkkejä kuten
!,#,$tai@admin-salasanassa, sillä jotkin PZ-versiot eivät jäsennä niitä oikein käynnistysargumenteissa. - Napsauta Save ja käynnistä palvelin uudelleen.
- Toissijaisena tarkistuksena avaa
.ini-tiedosto kansiossa/.cache/server/ja varmista, että rivilläAdminPassword=on arvo yhtäsuuruusmerkin jälkeen.
Korjaus 5 — Maailman nollaus (viimeinen keino jatkuvien kaatumisten varalta)
Jos maailman tallennus vioittuu — esimerkiksi kovan palvelinkaatumisen, epäonnistuneen päivityksen tai tiedostojärjestelmävirheiden jälkeen — itse tallennusdata voi olla palautumaton. Tässä tapauksessa maailman poistaminen ja tuoreelta aloittaminen on ainoa vaihtoehto.
Vaiheet
- Pysäytä palvelimesi GPanelissa ennen kuin teet muutoksia tallennustiedostoihin. Käynnissä olevan palvelimen tiedostojen muokkaaminen voi aiheuttaa lisävaurioita.
- Mene GPanelissa File Manager -välilehdelle.
- Siirry hakemistoon
/.cache/saves/multiplayer/. - Näet yhden tai useamman kansion palvelimesi nimellä (esim.
servertest). Ennen poistamista voit halutessasi ladata kansion varmuuskopioksi valitsemalla sen ja käyttämällä latausvaihtoehtoa — jopa vioittunut tallennus voi olla osittain palautettavissa myöhemmin. - Poista palvelimesi nimeä vastaava kansio
Multiplayer/-kansion sisältä. Älä poista itseMultiplayer-kansiota. - Siirry myös hakemistoon
/.cache/db/ja poista<YourServerName>.db-tiedosto. Tämä tietokanta sisältää pelaajatilastoja ja saattaa viitata vanhaan maailmaan — sen uudelleengeneroiminen välttää epäjohdonmukaisuudet. - Käynnistä palvelimesi. Se luo tuoreen maailman käyttäen
.ini-tiedoston asetuksia.
.ini-tiedostosi, admin-salasanasi, modilistasi ja porttiasetuksesi säilyvät kaikki. Seuraava käynnistys käyttää täsmälleen samoja asetuksia uuden maailman luomiseen.
Pikadiagnostiikan viite
| Mitä näet lokissa | Todennäköisin syy | Korjaus |
|---|---|---|
OutOfMemoryError tai Java heap space |
Ei tarpeeksi RAM-muistia B42:n käynnistykseen | Korjaus 1 — B42-muistivirhe |
IOException: No space left on device |
BackupsOnStart täyttää /tmp-kansion |
Korjaus 2 — BackupsOnStart |
SandboxVars-virhe tai Lua-jäsennysvirhe |
Vioittunut tai käsin muokattu määritystiedosto | Korjaus 3 — SandboxVars.lua |
| Palvelin sulkeutuu välittömästi, hyvin lyhyt konsolitulos | Tyhjä admin-salasana | Korjaus 4 — Admin-salasana |
| Kaatuu johdonmukaisesti riippumatta määritysmuutoksista | Vioittunut maailmatallennus | Korjaus 5 — Maailman nollaus |
Yhä kaatuu kaikkien vaiheiden jälkeen?
Jos palvelimesi kaatuu edelleen kaikkien yllä olevien korjausten jälkeen, avaa tukipyyntö Legion Hostingilla. Sisällytä seuraavat auttaaksesi tukitiimiä diagnosoimaan ongelman nopeasti:
- GPanel-konsolin tulosteen viimeiset 50 riviä kaatumishetkellä
- Uusimman
debug.log- taiDebugLog-server.txt-tiedoston täysi sisältö - Palvelimesi Project Zomboid -build-versio (näkyy konsolissa käynnistyksessä, esim.
Build 42.x.x) - RAM-varauksesi, kuten GPanelissa näkyy
- Tapahtuuko kaatuminen joka käynnistyksessä vai vasta sen jälkeen, kun palvelin on ollut käynnissä jonkin aikaa
- Kaikki ennen kaatumisen alkua tekemäsi muutokset (modien lisäykset, määritysmuokkaukset, pelipäivitykset)
Avaa tukipyyntö ja sisällytä palvelimesi tunnus ja virheilmoitukset GPanel-konsolista.