Réparer un fichier level.dat corrompu

Compatible avec Minecraft Bedrock Edition et Java Edition, ainsi qu'avec tous leurs logiciels serveur, courants ou non : Vanilla, Paper, Spigot, Purpur, Folia, Fabric, Forge, NeoForge, Mohist, Sponge, Bedrock Dedicated Server, PocketMine-MP, Nukkit, PowerNukkitX, Cloudburst, Dragonfly, Endstone, LeviLamina et les autres. Liste complète.

Un monde qui refuse de se charger présente généralement l'un de ces quatre problèmes : fichier level.dat tronqué par un plantage pendant la sauvegarde, mauvaise compression après une modification manuelle, longueur d'en-tête Bedrock incorrecte ou type d'une balise modifié. Déposez le fichier ci-dessous : l'éditeur indique précisément où l'analyse s'est arrêtée, ce qui permet d'identifier rapidement le cas concerné.

Diagnosticlevel.dat_oldEn-têteCompressionTroncature

Déposez level.dat ou level.dat_old ici

level.dat · .nbt · .mcstructure · .schem · .schematic · .dat · extractions de chunks

Causes réelles des erreurs

SymptômeCauseCorrection
L'éditeur signale « Unexpected end of data »Fichier tronqué : le processus s'est arrêté en cours de sauvegarde ou le disque était pleinRestaurer level.dat_old ou une sauvegarde ; les octets manquants sont perdus
Le jeu indique que le monde est corrompu, mais l'éditeur le chargeUn autre outil a écrit une compression ou un ordre des octets incorrectRéenregistrer ici dans le format adapté à l'édition
Le monde Bedrock n'apparaît plus dans la listeLa longueur de l'en-tête ne correspond plus à la charge utileOuvrir et enregistrer ici ; la longueur est recalculée automatiquement
Le journal du serveur indique une erreur de conversion de classe ou de type au chargementLe type d'une balise a été modifié manuellement (Byte à la place d'un Int attendu)Rétablir le type attendu par le jeu
Le monde se charge, mais vous apparaissez dans un monde neuflevel.dat a été remplacé par un fichier nouvellement généréRestaurer la sauvegarde ; les chunks de region/ ou db/ sont généralement intacts
Aucun fichier ne s'analyse, y compris _oldDéfaillance du stockage : le système de fichiers a renvoyé des zéros ou des données incohérentes pour les deuxRestaurer une sauvegarde stockée sur une autre machine ; vérifier le disque avant de refaire confiance à l'hôte

Récupérer un monde sans level.dat

Le terrain, les coffres et les joueurs du monde ne se trouvent pas dans level.dat, mais dans region/ (Java) ou db/ (Bedrock). Si le fichier de métadonnées est irrécupérable, créez un monde neuf avec la même version et les mêmes paramètres, déplacez-y les données des chunks, puis définissez LevelName, les coordonnées du spawn et les règles de jeu dans le nouveau fichier. Vous perdez les métadonnées, pas les constructions. Vérifiez d'abord la version : un monde Java possède une balise DataVersion et le fichier nouvellement généré ne doit pas être plus ancien que les chunks importés.

Prévenir une nouvelle corruption

  • Arrêtez le serveur avant toute copie ou modification. La plupart des corruptions commencent par la copie d'un fichier pendant son écriture.
  • Effectuez régulièrement des instantanés hors de la machine. Une sauvegarde sur le même disque ne résiste pas à la panne de stockage à l'origine du problème.
  • Encadrez les instantanés à chaud avec save-off / save-all afin que la copie soit effectuée lorsque le monde est au repos.
  • Surveillez l'espace disque. Un disque plein tronque silencieusement les sauvegardes, et level.dat est écrit en dernier.
  • Modifiez les valeurs, pas la structure. Le jeu ne peut pas tolérer le renommage des balises ni le changement de leur type.

Questions fréquentes

Qu'est-ce que level.dat_old ?

Il s'agit de la sauvegarde précédente. Minecraft renomme le fichier actuel en level.dat_old avant d'en écrire un nouveau ; cette sauvegarde d'une génération ne coûte rien à essayer en premier.

Un éditeur NBT peut-il réparer un fichier tronqué ?

Il peut indiquer précisément où les données s'arrêtent, mais les octets manquants ne peuvent pas être reconstruits. Une analyse partielle signifie qu'une sauvegarde est nécessaire.

Vais-je perdre mes constructions ?

Pas à cause du seul fichier level.dat. Les chunks se trouvent dans region/ ou db/ ; un fichier de monde neuf de même version peut les reprendre.

Le serveur accepte level.dat, mais le monde est vide.

Le problème vient alors du stockage des chunks, pas des métadonnées. Vérifiez que region/ ou db/ a bien été copié et que les coordonnées du spawn dans level.dat pointent vers l'emplacement attendu.

Outils associés