Linux Minecraft Sunucusu Yönetimi: Screen, Systemd ve Cron
VPS veya dedicated sunucuda Minecraft çalıştırıyorsanız Linux araçlarını etkin kullanmak sunucunuzun kararlılığını ve yönetimini büyük ölçüde kolaylaştırır.
Screen ile Sunucu Yönetimi
Screen, terminal oturumunuzu arka planda devam ettirmenizi sağlar:
# Screen yükleme
sudo apt install screen -y
# Yeni oturum başlatma
screen -S minecraft
# Sunucuyu başlatma
./start.sh
# Oturumdan çıkma (sunucu çalışmaya devam eder)
# Ctrl + A, sonra D
# Tekrar bağlanma
screen -r minecraft
# Tüm oturumları listeleme
screen -ls
Systemd Service (Otomatik Başlatma)
Sunucunun yeniden başlatmadan sonra otomatik başlaması için:
sudo nano /etc/systemd/system/minecraft.service
[Unit]
Description=Minecraft Sunucu
After=network.target
[Service]
User=minecraft
WorkingDirectory=/opt/minecraft
ExecStart=/usr/bin/java -Xms2G -Xmx4G -jar paper.jar nogui
ExecStop=/opt/minecraft/stop.sh
Restart=on-failure
RestartSec=5
[Install]
WantedBy=multi-user.target
sudo systemctl daemon-reload
sudo systemctl enable minecraft # Otomatik başlatma
sudo systemctl start minecraft # Başlat
sudo systemctl status minecraft # Durum kontrol
Otomatik Yedekleme (Cron)
crontab -e
# Her gece 03:00'te dünya yedekle
0 3 * * * cd /opt/minecraft && screen -S minecraft -X stuff "say [Sistem] Yedek alınıyor...\n" && tar czf /backups/world_$(date +\%Y\%m\%d).tar.gz world/ && screen -S minecraft -X stuff "say [Sistem] Yedek tamamlandı!\n"
# 7 günden eski yedekleri sil
0 4 * * * find /backups -name "world_*.tar.gz" -mtime +7 -delete
Otomatik Yeniden Başlatma
# Her gün sabah 06:00'da sunucuyu yeniden başlat
0 6 * * * systemctl restart minecraft
Log Takibi
# Canlı log izleme
tail -f /opt/minecraft/logs/latest.log
# Hataları filtrele
grep -i "error\|warn\|fatal" /opt/minecraft/logs/latest.log | tail -50
# Systemd logları
journalctl -u minecraft -f
💡 Etkileşim için giriş yap.