Minecraft 伺服器意外建立新世界的修復方式
當伺服器沒有載入原存檔而另建新世界時,依序檢查 level-name、目錄層級、執行個體、面板覆寫與啟動日誌。
更新於 2026-08-12 · MapMC Editorial
上傳存檔或重新啟動後看到全新地形,不代表舊世界一定被刪除。更常見的是伺服器找不到目標資料夾、設定指向別的名稱,或載入失敗後另建世界。此時要立即停止寫入,保留舊世界、新世界與第一次異常日誌。
馬上停服並保存現場
由主控台正常輸入 stop 並確認程序結束。不要讓玩家在意外世界繼續遊玩,否則會形成無法直接合併的第二份進度。把原世界、新生成世界、server.properties 與 logs/latest.log 複製到活動目錄之外,記下名稱、容量、修改時間及故障前動作。
不要先刪除新資料夾,它的名稱可反映伺服器原本想載入什麼。診斷時先停用崩潰自動重啟,避免反覆啟動改變時間與日誌。
找到真正的世界根目錄
在原存檔內找到 level.dat,直接包含它的資料夾才是世界根。server/london/london/level.dat 表示多了一層包裝;未解壓 ZIP 也無法載入。若旁邊有一個容量很小、時間很新的世界,通常表示名稱或路徑不符,而不是原世界瞬間消失。
不要只在兩個世界之間複製 level.dat。區塊、實體、興趣點、玩家和維度資料必須保持一致,也要確認大檔案上傳與解壓未中斷。
核對 level-name 與面板覆寫
停服時開啟實際生效的 server.properties:
level-name=mapmc-london
內容需與原世界資料夾逐字相同,不加引號和副檔名,Linux 注意大小寫。面板可能另有「世界名稱」並在啟動時覆寫檔案,儲存後應重新檢查。若新目錄叫 world,多半仍使用預設值;若名稱相同卻是空白世界,就繼續查層級、權限與工作目錄。
確認程序使用哪個執行個體
主機面板可能有多個執行個體、設定檔或容器磁碟區。檔案上傳成功,不表示正在執行的 Java 程序會讀取它。查看啟動命令、JAR 路徑、個體名稱與日誌開頭,確認程序工作目錄正是剛才編輯的位置。
自架伺服器也要查服務工作目錄與擁有權;部署腳本、同步或排程還原可能在啟動時覆寫資料。不要把世界盲目複製到所有可見目錄。
從第一個載入錯誤讀日誌
在 latest.log 搜尋目標世界名、資料版本、session lock、權限、缺少模組與讀取 level.dat 或區塊的例外。最後顯示「就緒」不能證明世界正確,伺服器可能先載入失敗,再成功產生空白世界。
先保存第一條相關錯誤再重啟。若日誌指出世界來自較新的資料版本,不要降版打開唯一副本;恢復相符環境並在複製品測試。
只修正一份測試副本
複製原世界並使用簡單測試名稱,只處理有證據的問題:移除一層包裝、補完整上傳、設定 level-name、恢復依賴,或指向正確工作目錄。測試期間使用白名單。
啟動後確認日誌載入測試世界,再查看出生點、已知建築、地獄與終界、玩家物品及資料包。正常停服、重啟並確認小改動保留。僅憑種子或附近地形相似,不能證明載入同一世界。
依證據選擇處理方式
- 名稱不同:保留備份後修正
level-name。 - 目錄重複:將含
level.dat的根目錄放到正確層級。 - 執行錯誤個體:更正程序或依文件上傳到該根目錄。
- 依賴缺少:先重建相容的伺服器環境。
- 存檔確實損壞:以新名稱還原已驗證備份,並留存損壞副本。
不要刪掉新世界來「逼伺服器認出舊檔」。它通常只會再次生成設定指定的資料夾,並使證據消失。
避免未來再次切換世界
自動備份應放在活動目錄之外,並定期演練還原。記錄目前的 level-name、伺服器根目錄、版本、載入器、模組與面板個體。每次搬移或升級後,都固定做私人啟動、地標確認、正常停服及再次啟動。
安全順序是停服、複製、找世界根、核對名稱、確認個體、讀第一條錯誤,再測試副本。多數可復原的「世界不見」都能依此找到明確原因。
來源與審核依據
有官方文檔時優先採用,並公開支撐事實性內容的參考來源。