Belirtiler: Sunucu beklenmedik davranıyor, ayarlar etkili olmuyor, config değişiklikleri kayboluyor veya bazı özellikler hiç çalışmıyor. Bu sorunların büyük kısmı hatalı yapılandırma dosyalarından (server.properties, spigot.yml, paper.yml, bukkit.yml) kaynaklanır.
Olası Nedenler
- server.properties içinde anlamsız değerler girilmiş (max-players=0, view-distance=32 vb.)
- spigot.yml ya da paper.yml YAML syntax hatası içerdiği için sunucu varsayılanlara düşüyor
- Config değiştirildikten sonra sunucu tam yeniden başlatılmadı — /reload yetmez
- Aynı ayar birden fazla dosyada tanımlı ve çakışıyor (örn. view-distance hem server.properties hem spigot.yml içinde)
- YAML dosyasında tab karakteri kullanılmış — YAML yalnızca boşluk kabul eder
- Yanlış dosya izinleri yüzünden sunucu dosyayı okuyamıyor veya yazamıyor
Adım Adım Çözüm
1. Adım
Yedeğini alıp server.properties içindeki değerleri hızlıca gözden geçirin. Çoğu sorun burada gizlidir
cp server.properties server.properties.bak
grep -E "max-players|view-distance|simulation-distance|online-mode|server-port|level-name" server.properties2. Adım
Tüm YAML dosyalarını syntax açısından doğrulayın. Tek bir hatalı boşluk sunucunun o dosyayı yok saymasına yol açar
for f in *.yml plugins/*/config.yml; do python3 -c "import yaml,sys; yaml.safe_load(open(sys.argv[1]))" "$f" 2>&1 | head -3; done3. Adım
Config değiştirdiğinizde sunucuyu TAM yeniden başlatın. /reload komutu server.properties değişikliklerini uygulamaz
# screen oturumuna:
screen -S mc -X stuff "stop\n"
# pm2 ile:
pm2 restart minecraft4. Adım
Çakışmayı tespit edin: aynı ayarı tüm config dosyalarında arayın
grep -rn "view-distance" server.properties *.yml plugins/*/config.yml 2>/dev/null5. Adım
YAML dosyalarında tab olup olmadığını kontrol edin
grep -nP "\t" *.yml && echo "TAB bulundu — boşluğa çevirin" || echo "Temiz"6. Adım
Dosya sahipliğini minecraft kullanıcısına verin. Root ile düzenlenen dosyalar ilerleyen kullanımda izin sorunu çıkarır
chown -R minecraft:minecraft /home/minecraft/server/
find . -name "*.yml" -o -name "*.properties" | xargs chmod 6447. Adım
Paper kullanıyorsanız config uyarılarını açık tutun — hatalı ayarları başlangıçta log'a yazar
# config/paper-global.yml
misc:
print-config-warnings: true8. Adım
Plugin config'lerini doğrulamak için başlangıç sırasında loaded log satırlarını izleyin
tail -f logs/latest.log | grep -iE "config|loaded|properties"