Linux üzerinde Minecraft sunucu kurulumu, doğru sırayla yapıldığında yaklaşık yirmi dakika süren bir işlemdir: SSH ile sunucuya bağlanırsınız, sistemi güncellersiniz, Java 25 kurarsınız, ayrı bir minecraft kullanıcısı açarsınız, sunucu jar’ını indirip EULA’yı onaylarsınız, start.sh yazarsınız ve son olarak systemd servisi ile UFW kuralını tanımlarsınız. Bu sayfa bu akışın tamamını Ubuntu 24.04 LTS üzerinde, kopyalanabilir komutlarla anlatıyor.
Ubuntu’yu birinci hedef olarak alıyoruz çünkü hem hosting sağlayıcılarında en yaygın dağıtım o, hem de Minecraft topluluğunun ürettiği betiklerin büyük bölümü Ubuntu üzerinde test ediliyor. Debian 12 kullanıyorsanız komutların neredeyse tamamı aynen çalışır; AlmaLinux ve Rocky Linux’ta ise apt yerine dnf, UFW yerine firewalld devreye girer.
Sunucu işletim sistemini henüz kurmadıysanız önce Ubuntu Server kurulumu ve ilk yapılandırma sayfasını tamamlayın. Elinizde çalışan bir Ubuntu makinesi varsa doğrudan aşağıdan devam edebilirsiniz.
Kurulumdan Önce: Donanım ve Sürüm Kararı#
İki karar kurulumun geri kalanını belirler: hangi Minecraft sürümünü çalıştıracaksınız ve makinede ne kadar kaynak var.
Sürüm tarafında bilmeniz gereken en önemli şey Java gereksinimidir. Mojang 2026’da sürüm numaralandırmasını YY.D.H biçimine geçirdi. Güncel kararlı sürüm 26.2 "Chaos Cubed" (16 Haziran 2026, protokol 776), ondan önceki dönüm noktası ise 26.1 "Tiny Takeover" (24 Mart 2026, protokol 775). Her ikisi de Java 25 ister.
| Minecraft sürümü | Gerekli Java | Not |
|---|---|---|
| 26.1 ve sonrası (26.1, 26.1.1, 26.1.2, 26.2) | Java 25 | Güncel hat |
| 1.20.5 – 1.21.11 | Java 21 | Eklenti ekosistemi hâlâ geniş |
| 1.17 – 1.20.4 | Java 17 | Eski modpackler |
| 1.16.5 ve öncesi (1.12.2, 1.8.9) | Java 8 | Yalnızca eski sunucular için |
Donanım tarafında ise şu tabloyu esas alın. Minecraft’ın ana tick döngüsü tek çekirdekte çalıştığı için çekirdek sayısı değil saat hızı belirleyicidir; bu yüzden yüksek frekanslı AMD Ryzen işlemciler bu iş için düşük frekanslı çok çekirdekli sunucu işlemcilerinden belirgin biçimde iyidir.
| Sunucu profili | RAM | Java heap | İşlemci | Disk |
|---|---|---|---|---|
| 2-10 oyuncu, vanilla / hafif eklentili | 8 GB | -Xms6G -Xmx6G | Ryzen 9 3900X ve üzeri | 50 GB NVMe |
| 10-30 oyuncu, eklentili Paper | 10-12 GB | -Xms10G -Xmx10G | Ryzen 9 7900X | 50-100 GB NVMe |
| 30-60 oyuncu, minigame / çok dünyalı | 16 GB | -Xms14G -Xmx14G | Ryzen 9 7900X / 7950X | 100 GB NVMe |
| Forge / Fabric modpack | 16 GB (büyük modpackte 24-32 GB) | -Xms14G -Xmx14G | Ryzen 9 7950X | 100 GB+ NVMe |
| 60+ oyuncu veya proxy’li sunucu ağı | 32 GB ve üzeri | -Xms28G -Xmx28G | Ryzen 9 7950X | 200 GB+ NVMe |
Disk konusunda tavsiye tek: NVMe SSD. Chunk okuma ve yazma işlemleri küçük, rastgele erişimli I/O üretir; SATA SSD’de bile otomatik kaydetme anlarında gecikme hissedilir. Kendi makinenizi kiralayacaksanız Ryzen ve NVMe tabanlı VDS paketleri bu profile göre yapılandırılmıştır.
Sunucu Yazılımı Seçimi: Vanilla, Paper, Purpur, Forge, Fabric#
İkinci karar, hangi sunucu yazılımını kuracağınızdır. Bu seçim eklenti mi mod mu kullanacağınızı, alacağınız performansı ve güncelleme temponuzu belirler.
Vanilla (resmî sunucu jar)#
Mojang’ın yayınladığı orijinal sunucudur. Referans davranışı verir ama eklenti API’si yoktur; yalnızca datapack ve komut bloklarıyla özelleştirilir. Yirmi kişilik bir arkadaş sunucusunda yeterli olabilir, halka açık bir sunucuda kısa sürede darlık yaratır.
Paper — çoğu sunucu için doğru cevap#
Paper, Bukkit/Spigot eklenti API’sini korurken yüzlerce performans yaması ekleyen fork’tur. 26.2 için güncel yapı build #112’dir. Eklenti ekosisteminin neredeyse tamamı Paper üzerinde test edilir, dokümantasyonu güçlüdür ve yapılandırma dosyaları (config/paper-global.yml, config/paper-world-defaults.yml) ayarlanabilirlik açısından en zengin olanıdır. Bu rehberde Paper örnek alınmasının sebebi budur.
Purpur — daha fazla ayar, aynı temel#
Purpur, Paper’ın üzerine Pufferfish’in performans yamalarını ve çok sayıda oynanış ayarını ekler; 26.2 hattında güncel derleme build 2620’dir. Pufferfish arayanlar için de doğru adres Purpur’dur: Pufferfish kendi başına 26.x’e geçmedi, son sürümü 1.21.x hattında kaldı. Paper ile eklenti uyumluluğu birebir olduğu için geçiş yalnızca jar değiştirmekten ibarettir.
Folia, Leaves ve Leaf#
Folia, dünyayı bölgelere ayırıp her bölgeyi ayrı iş parçacığında işleyen deneysel Paper fork’udur. 26.1.2 için kararlı bir yapı sunuyor, 26.2 tarafı hâlâ beta. Eklenti uyumluluğu sınırlıdır; yalnızca oyuncuların geniş alana dağıldığı çok büyük sunucularda anlam kazanır. Leaves henüz 26.x’e geçmedi, Leaf ise 26.2 dalını taşıyor ama erken aşamada. Üretim sunucusunda bu üçüne temkinli yaklaşın.
Forge ve Fabric — modlu sunucular#
Mod çalıştıracaksanız eklenti değil mod yükleyicisi gerekir. Minecraft 26.2 için Forge’un 65.x dalı kullanılır (latest 65.1.1, recommended 65.1.0); Fabric tarafında güncel değerler Loader 0.19.3 ve Installer 1.1.2’dir. Modlu sunucularda RAM tabanı 16 GB’dır, büyük modpacklerde 24-32 GB gerekir ve ilk dünya üretimi vanilla’ya göre kat kat uzun sürer.
Sunucuya SSH ile Bağlanma#
Sağlayıcınız size bir IP adresi, kullanıcı adı ve parola (ya da SSH anahtarı) verir. Bağlantı komutu:
ssh root@203.0.113.10
# özel bir port kullanılıyorsa
ssh -p 2222 kullanici@203.0.113.10
İlk bağlantıda sunucunun parmak izini onaylamanız istenir, yes yazıp Enter’a basın. Anahtar tabanlı kimlik doğrulama, parola kullanmaktan hem daha güvenli hem daha pratiktir; kurulumunu SSH ile sunucuya bağlanma rehberinde adım adım bulabilirsiniz.
Sistemi Güncelleme ve Temel Paketler#
Kuruluma başlamadan önce paket listesini tazeleyip yüklü paketleri güncelleyin, sonra rehber boyunca kullanacağımız araçları kurun:
sudo apt update && sudo apt upgrade -y
sudo apt install -y wget curl tar unzip screen ufw ca-certificates
Bu paketlerin her biri ileride işimize yarayacak: wget jar indirmek, tar Java arşivini açmak ve yedek almak, screen sunucuyu arka planda tutmak, ufw ise portu kontrollü biçimde açmak için.
Java 25 Kurulumu#
Minecraft 26.x için Java 25 zorunludur. Eclipse Temurin birinci tercihimiz; Amazon Corretto ve Azul Zulu da uygun alternatiflerdir. Oracle JDK’yı önermiyoruz çünkü indirme öncesi lisans onayı istiyor ve otomasyonu zorlaştırıyor.
-
Eclipse Temurin JDK 25LTS · Önerilenİndir
-
Paper 26.2 sunucu jarİndir
-
Purpur 26.2Alternatifİndir
-
Resmî Minecraft sunucu jarİndir
Bağlantılar resmî kaynaklara gider. Üçüncü taraf sitelerden jar veya Java arşivi indirmeyin.
Adoptium sayfasından Linux x64 · JDK · .tar.gz bağlantısını kopyalayın ve sunucuda çalıştırın:
cd /tmp
wget -O temurin-25.tar.gz "KOPYALADIGINIZ_BAGLANTI"
sudo mkdir -p /opt/java
sudo tar -xzf temurin-25.tar.gz -C /opt/java
ls /opt/java
Çıkan dizin adını (örneğin jdk-25.0.4+7) kullanarak Java’yı sistem geneline tanıtın:
sudo update-alternatives --install /usr/bin/java java /opt/java/jdk-25.0.4+7/bin/java 2500
sudo update-alternatives --config java
java -version
Beklenen çıktı şuna benzemeli:
openjdk version "25.0.4" 2026-07-15
OpenJDK Runtime Environment Temurin-25.0.4+7 (build 25.0.4+7)
OpenJDK 64-Bit Server VM Temurin-25.0.4+7 (build 25.0.4+7, mixed mode, sharing)
Dağıtımınızın deposunda hazır bir Java 25 paketi bulunuyorsa onu da kullanabilirsiniz; kontrol etmek için apt-cache policy openjdk-25-jre-headless komutunu çalıştırın. Depo yöntemi, birden fazla Java sürümünü yan yana tutma ve otomatik güvenlik güncellemesi alma açısından pratiktir. Tüm dağıtımlar için ayrıntılı anlatım Linux’a Java 25 kurulumu sayfasında; sürüm eşleşmesinin tamamı ise hangi Java sürümü gerekir sayfasında.
Ayrı Bir minecraft Kullanıcısı Oluşturma#
Sunucuyu root ile çalıştırmak, bir eklenti açığının doğrudan sistem ele geçirmesine dönüşmesi demektir. Ayrı bir kullanıcı açmak otuz saniye sürer ve saldırı yüzeyini ciddi biçimde daraltır.
-
Kullanıcıyı ve dizinleri oluşturun#
sudo adduser --disabled-password --gecos "" minecraft sudo mkdir -p /opt/minecraft/server sudo mkdir -p /opt/minecraft/backups sudo chown -R minecraft:minecraft /opt/minecraft -
Kullanıcıya geçin#
Bundan sonraki tüm dosya işlemlerini bu kullanıcıyla yapın:
sudo -u minecraft -i cd /opt/minecraft/server whoami -
Sunucu jar’ını indirin#
PaperMC indirme sayfasından 26.2 için en güncel build bağlantısını kopyalayın ve indirin. Dosyayı
paper.jarolarak adlandırmak, ileride başlatma betiğini her güncellemede düzenlemekten kurtarır.wget -O paper.jar "PAPER_INDIRME_BAGLANTISI" ls -lh paper.jar
İlk Çalıştırma ve EULA Onayı#
Sunucuyu ilk kez elle çalıştırın. Bu çalıştırma yapılandırma dosyalarını üretir ve EULA uyarısıyla kapanır — beklenen davranış budur:
cd /opt/minecraft/server
java -Xms6G -Xmx6G -jar paper.jar --nogui
Konsolda şu satırı göreceksiniz:
[main/ERROR]: You need to agree to the EULA in order to run the server.
Go to eula.txt for more info.
Dosyayı düzenleyip onaylayın:
nano eula.txt
# eula=false satirini eula=true yapin, Ctrl+O ile kaydedin, Ctrl+X ile cikin
# ya da tek komutla:
sed -i "s/eula=false/eula=true/" eula.txt
grep eula eula.txt
Şimdi sunucuyu tekrar başlatın. İlk gerçek açılışta dünya üretilir; makineye ve dünya ayarlarına göre bu bir ila birkaç dakika sürebilir. Konsolda Done (xx.xxxs)! For help, type "help" satırını gördüğünüzde sunucu çalışıyor demektir. Kapatmak için stop yazın — süreci Ctrl+C ile öldürmek dünyanın yarım kaydedilmesine yol açabilir.
server.properties Yapılandırması#
Sunucu dizininde oluşan server.properties, oyunun temel davranışını belirler. Aşağıdaki değerler yeni bir survival sunucusu için makul bir başlangıç noktasıdır:
server-port=25565
server-ip=
motd=Batihost Test Sunucusu
max-players=40
gamemode=survival
difficulty=normal
online-mode=true
white-list=false
view-distance=8
simulation-distance=6
spawn-protection=0
enable-command-block=false
network-compression-threshold=256
enforce-secure-profile=true
Birkaç satırın altını çizelim. server-ip boş bırakılmalıdır; buraya bir değer yazmak sunucunun yalnızca o arayüzü dinlemesine ve dışarıdan bağlantı alamamasına yol açar. online-mode=true, oyuncuların Mojang hesabıyla doğrulanmasını sağlar ve sunucunuzu hesap taklidine karşı korur. view-distance ise doğrudan CPU yükünü belirleyen ayardır: 8, çoğu sunucu için performans ve oynanış dengesinin oturduğu değerdir.
Dosyadaki her satırın ne işe yaradığını görmek için server.properties tam liste sayfasına bakabilirsiniz.
start.sh ve JVM Bayrakları#
Sunucuyu her seferinde uzun bir java komutuyla başlatmak yerine bir başlatma betiği yazın. 12 GB RAM’li bir makine için:
nano /opt/minecraft/server/start.sh
#!/bin/bash
cd /opt/minecraft/server
java -Xms10G -Xmx10G \
--add-modules=jdk.incubator.vector \
-XX:+UseG1GC -XX:+ParallelRefProcEnabled -XX:MaxGCPauseMillis=200 \
-XX:+UnlockExperimentalVMOptions -XX:+DisableExplicitGC -XX:+AlwaysPreTouch \
-XX:G1NewSizePercent=30 -XX:G1MaxNewSizePercent=40 -XX:G1HeapRegionSize=8M \
-XX:G1ReservePercent=20 -XX:G1HeapWastePercent=5 -XX:G1MixedGCCountTarget=4 \
-XX:InitiatingHeapOccupancyPercent=15 -XX:G1MixedGCLiveThresholdPercent=90 \
-XX:G1RSetUpdatingPauseTimePercent=5 -XX:SurvivorRatio=32 \
-XX:+PerfDisableSharedMem -XX:MaxTenuringThreshold=1 \
-jar paper.jar --nogui
Betiği çalıştırılabilir yapın:
chmod +x /opt/minecraft/server/start.sh
/opt/minecraft/server/start.sh
Yukarıdaki bayrak seti Aikar’s Flags olarak bilinir ve 26.x sunucularında hâlâ geçerlidir. Heap 12 GB’ın üzerine çıkarsa büyük heap varyantına geçin: G1NewSizePercent=40, G1MaxNewSizePercent=50, G1HeapRegionSize=16M, G1ReservePercent=15, InitiatingHeapOccupancyPercent=20.
-XX:+UseZGC yazın; -XX:+ZGenerational bayrağı Java 25’te obsolete’tir ve uyarı basar. Pratik ayrım: 8-12 GB heap için G1GC + Aikar’s Flags, 16 GB ve üzeri ya da ağır modlu sunucularda ZGC değerlendirilebilir.Xms ve Xmx daima eşit verilir; böylece JVM heap’i büyütüp küçültmek için duraklamaz. Heap hesabı ve bayrakların satır satır açıklaması için RAM ayarları ve JVM flag rehberine göz atın.
screen ile Arka Planda Çalıştırma#
SSH oturumunuz kapandığında ön planda çalışan sunucu da kapanır. screen bu sorunu çözer: sunucu kendi sanal terminalinde çalışmaya devam eder, siz istediğinizde konsola geri dönersiniz.
# yeni bir oturum baslat
screen -S minecraft
# oturumun icinde sunucuyu calistir
/opt/minecraft/server/start.sh
# oturumdan ayril: Ctrl+A tuslarina bas, birak, sonra D tusuna bas
# calisan oturumlari listele
screen -ls
# konsola geri don
screen -r minecraft
Konsola bağlandığınızda doğrudan Minecraft komutları yazabilirsiniz: list, op oyuncuadi, save-all, stop. tmux tercih ediyorsanız mantık aynıdır, yalnızca tuş kombinasyonları değişir; iki aracın karşılaştırması screen ve tmux kullanım sayfasında.
systemd Servisi ile Otomatik Başlatma#
screen tek başına yeterli değildir: makine yeniden başlarsa sunucu açılmaz, süreç çökerse kimse ayağa kaldırmaz. systemd her ikisini de halleder. Unit dosyasını root olarak oluşturun:
sudo nano /etc/systemd/system/minecraft.service
[Unit]
Description=Minecraft Paper Sunucusu
After=network-online.target
Wants=network-online.target
[Service]
Type=forking
User=minecraft
Group=minecraft
WorkingDirectory=/opt/minecraft/server
ExecStart=/usr/bin/screen -DmS minecraft /opt/minecraft/server/start.sh
ExecStop=/usr/bin/screen -p 0 -S minecraft -X eval "stuff 'stop'\\015"
Restart=on-failure
RestartSec=15
TimeoutStopSec=90
[Install]
WantedBy=multi-user.target
Servisi etkinleştirip başlatın:
sudo systemctl daemon-reload
sudo systemctl enable --now minecraft
sudo systemctl status minecraft
# canli log takibi
sudo journalctl -u minecraft -f
Bu yapılandırmanın güzel yanı, sunucunun screen oturumu içinde çalışmasıdır: systemd yeniden başlatmayı ve önyüklemede açılmayı üstlenirken siz sudo -u minecraft screen -r minecraft ile konsola girip komut yazabilirsiniz. ExecStop satırı ise servis durdurulurken konsola stop komutunu gönderir, böylece dünya düzgün kaydedilir.
systemctl stop yerine süreci kill -9 ile öldürmek, o sırada yazılmakta olan region dosyalarının bozulmasına ve chunk kaybına yol açabilir. Sunucuyu daima stop komutuyla ya da yukarıdaki servis üzerinden kapatın.Unit dosyasının her satırının açıklaması, gecikmeli başlatma ve çökme sonrası davranış ayarları için systemd servisi oluşturma sayfasına bakın.
UFW ile Portu Açma#
Java Edition varsayılan olarak 25565/TCP portunu dinler. Bedrock için ayrıca 19132/UDP açılır. Ubuntu’da güvenlik duvarı UFW ile yönetilir:
sudo ufw allow OpenSSH
sudo ufw allow 25565/tcp
sudo ufw enable
sudo ufw status verbose
ufw enable komutunu çalıştırmadan önce mutlaka ufw allow OpenSSH kuralını ekleyin. Aksi halde SSH bağlantınız anında kesilir ve sunucuya yalnızca sağlayıcınızın konsolu üzerinden erişebilirsiniz.Portun gerçekten dinlendiğini doğrulayın:
sudo ss -tulpn | grep 25565
Çıktıda java süreci görünüyorsa sunucu tarafı hazırdır. Dışarıdan hâlâ bağlanılamıyorsa sorun sağlayıcı tarafındaki ağ filtresindedir. Belirli IP’lere kısıtlama, Bedrock portu ve kural doğrulama örnekleri UFW ile port açma sayfasında anlatılıyor.
Yedekleme: cron ile Otomatik Dünya Arşivi#
Kurulumun son ve en çok ihmal edilen adımı yedeklemedir. Dünyanın günlük arşivini almak için minecraft kullanıcısının crontab’ına bir görev ekleyin:
sudo -u minecraft crontab -e
# her gece 04:00'te dunya klasorunu arsivle
0 4 * * * tar -czf /opt/minecraft/backups/world-$(date +\%F).tar.gz -C /opt/minecraft/server world
# 14 gunden eski yedekleri sil
30 4 * * * find /opt/minecraft/backups -name "world-*.tar.gz" -mtime +14 -delete
crontab içinde % karakterinin ters bölü ile kaçırılması gerektiğine dikkat edin; bu, tarih biçimlendirmesinin bozulmasına yol açan klasik bir hatadır. Aynı makinede tutulan yedek gerçek bir yedek sayılmaz; arşivleri düzenli olarak başka bir sunucuya veya nesne depolamaya kopyalayın. Strateji kurmak için Minecraft yedekleme rehberini okuyun.
Sunucuyu Yeni Sürüme Güncelleme#
Yeni bir Minecraft sürümü çıktığında jar’ı değiştirmek yetmez; eklentilerin de uyumlu olması gerekir. 26.x hattında bu iş eskisinden daha hassas, çünkü 26.1 ile birlikte Mojang obfuscated sunucu jar’ı yayınlamayı bıraktı. Paper dahili remapper’ını tamamen kaldırdı, Spigot desteğini düşürdü, Fabric ise Yarn’ı bırakıp Mojang Mappings’e geçti. Sonuç: NMS kullanan eklentiler ve tüm modlar yeniden derlenmeden çalışmaz.
Güvenli güncelleme akışı şöyledir:
sudo systemctl stop minecraft
# tam yedek al (dunya + eklentiler + config)
sudo -u minecraft tar -czf /opt/minecraft/backups/tam-yedek-$(date +%F).tar.gz \
-C /opt/minecraft server
# eski jar'i sakla, yenisini indir
cd /opt/minecraft/server
sudo -u minecraft mv paper.jar paper-onceki.jar
sudo -u minecraft wget -O paper.jar "YENI_PAPER_BAGLANTISI"
sudo systemctl start minecraft
sudo journalctl -u minecraft -f
Güncellemeden önce eklenti listenizi tek tek gözden geçirin. 11 Ağustos 2026 itibarıyla dikkat edilmesi gereken birkaç nokta var: PlaceholderAPI kullanıyorsanız 26.2’ye çıkmadan önce mutlaka 2.12.3 sürümüne geçin, çünkü Paper 26.2 sürüm dizgisi yapısını değiştirdi. WorldGuard tarafında 26.2 desteği 7.0.18 ile geldi, WorldEdit tarafında 7.4.4 ile. LuckPerms 5.5.57 sürümü 26.2’yi tam destekliyor. Buna karşılık EssentialsX’in kararlı 2.22.0 sürümü resmî olarak en fazla 26.1.2’yi kapsıyor, CoreProtect’in güncel Community Edition v24.0 sürümü de 26.1.2’de duruyor. Bu iki eklentiye bağımlıysanız 26.2’ye geçişi erteleyip 26.1.2 hattında kalmak daha az riskli olabilir.
Sık Karşılaşılan Hatalar#
| Hata | Sebep | Çözüm |
|---|---|---|
| UnsupportedClassVersionError | Java sürümü sunucu jar’ından eski | java -version ile kontrol edin, 26.x için Java 25 kurun |
| Failed to bind to port | 25565 zaten kullanımda | sudo ss -tulpn | grep 25565 ile süreci bulup durdurun |
| Permission denied | Dizin sahipliği yanlış | sudo chown -R minecraft:minecraft /opt/minecraft |
| You need to agree to the EULA | eula.txt onaylanmamış | eula=true yapıp yeniden başlatın |
| Connection refused | Güvenlik duvarı veya server-ip dolu | UFW kuralını ekleyin, server-ip satırını boşaltın |
| Can’t keep up! Is the server overloaded? | Tick süresi 50 ms’yi aşıyor | view-distance düşürün, eklenti profili çıkarın |
Bu tabloda çözemediğiniz bir hatayla karşılaşırsanız önce journalctl -u minecraft -n 200 çıktısına, sonra logs/latest.log dosyasına bakın. Java yığın izinin ilk beş satırı genellikle sorumlu eklentiyi doğrudan gösterir.
Kurulumdan Sonra: Eklentiler ve Optimizasyon#
Sunucu ayakta olduğuna göre sıradaki adım içerik ve performanstır. Paper tabanlı bir sunucuda eklentiler /opt/minecraft/server/plugins dizinine .jar olarak atılır ve sunucu yeniden başlatılır. İzin yönetimi için LuckPerms, temel komut seti için EssentialsX, bölge koruması için WorldGuard ilk kurulacaklar arasındadır; kurulum sırası ve bağımlılıklar plugin kurulumu rehberinde anlatılıyor.
Performans tarafında ise iki dosya belirleyicidir: config/paper-global.yml ve spigot.yml. Varsayılan değerler güvenli ama muhafazakârdır; yaratık limitleri, chunk yükleme davranışı ve entity aktivasyon aralıkları ayarlandığında aynı donanımda belirgin fark alırsınız. Tam liste ve önerilen değerler TPS’i 20’de tutma rehberinde.
Sunucunun sağlığını gözlemek için üç komut yeter. htop ile java sürecinin CPU ve bellek kullanımını, df -h ile disk doluluğunu, free -h ile sistemde kalan boş belleği izleyin. Java heap’i -Xms ile önceden ayrıldığı için free -h çıktısında sunucu boştayken bile yüksek kullanım görürsünüz; bu normaldir, sorun değildir. Asıl bakmanız gereken available sütunudur: bu değer sürekli birkaç yüz megabaytın altına düşüyorsa heap fazla verilmiş demektir.
Oyun içi tarafta ise TPS’i tps komutuyla anlık olarak kontrol edebilirsiniz. Paper, son bir dakika, beş dakika ve on beş dakikalık ortalamaları döndürür. Bir numaralı değer sürekli 19’un altındaysa sunucu tick’leri yetiştiremiyor demektir; bu durumda önce view-distance ve simulation-distance değerlerini birer kademe düşürün, sonra eklenti profili çıkarın. Sunucuya IP yerine alan adıyla bağlanılmasını istiyorsanız DNS tarafında bir A kaydı yeterlidir; port 25565 dışında bir değer kullanıyorsanız SRV kaydı da tanımlamanız gerekir.
/opt/minecraft/server altında kendi kullanıcısıyla çalışan bir Paper 26.2 sunucusu, önyüklemede otomatik açılan bir systemd servisi, açık bir 25565/TCP portu ve her gece çalışan bir yedekleme görevi. Kurulum tamamlanmıştır.Özetle#
Linux üzerinde Minecraft sunucu kurulumunun özü sekiz adımdır: SSH ile bağlan, sistemi güncelle, Java 25 kur, ayrı kullanıcı aç, jar’ı indir, EULA’yı onayla, start.sh + systemd ile kalıcı hale getir, UFW ile portu aç. Bu sırayı bozmadan ilerlediğinizde ne izin hatası ne de port sorunu yaşarsınız.
Kalıcı iki kural var: sunucuyu asla root ile çalıştırmayın ve yedeği aynı makinede tutmayın. Geri kalan her şey — eklentiler, oyun modu, dünya ayarları — sonradan değiştirilebilir, ama bu ikisinde yapılan hatanın telafisi olmuyor.
Kendi donanımınızı yönetmek istemiyorsanız Batihost Minecraft sunucu paketleri Java 25 kurulu, Ryzen ve NVMe tabanlı hazır yapılandırmalarla 156 TL’den başlıyor; tam kontrol isteyenler içinse VDS paketlerinde bu rehberdeki kurulumu ilk dakikadan itibaren uygulayabilirsiniz.