Ubuntu’da Minecraft Bedrock Dedicated Server kurulumu, Java Edition kurulumundan daha kısadır: BDS yerel bir x86-64 ikili dosyadır, JVM istemez ve tek bir ZIP paketinden çıkar. Kabaca akış şudur — bağımlılıkları kurun, paketi /opt/bedrock altına açın, LD_LIBRARY_PATH=. ile çalıştırın, 19132/UDP portunu açın.
Java tarafındaki alışkanlıkların çoğu burada geçmez. Bellek -Xmx bayrağıyla verilmez, EULA için ayrı bir eula.txt dosyası yoktur, whitelist.json yerine allowlist.json kullanılır ve yetkiler oyuncu adına değil Xbox XUID’sine bağlanır. Sürüm şeması bile ayrıdır: Java Edition 2026’da YY.D.H biçimine (26.1, 26.2) geçerken Bedrock tarafı kendi numaralandırmasını sürdürüyor, bu iki şemayı karıştırmayın.
Bu rehber Ubuntu 24.04 LTS temel alınarak yazıldı; Debian 12 üzerinde de paket adları dışında aynı adımlar geçerlidir. Windows tarafını arıyorsanız Windows’ta Bedrock Dedicated Server kurulumu sayfasına geçin.
Bedrock Dedicated Server Nedir, Java Edition’dan Farkı Ne?#
BDS, Mojang’ın telefon, tablet, konsol ve Windows istemcileri için yayınladığı resmî sunucu yazılımıdır. Java Edition sunucusu bir .jar dosyasıdır ve Java 25 çalışma zamanına ihtiyaç duyar; BDS ise doğrudan işletim sistemine derlenmiş bir programdır.
| Özellik | Bedrock Dedicated Server | Java Edition sunucusu |
|---|---|---|
| Çalışma zamanı | Yerel x86-64 ikili | Java 25 JVM |
| Varsayılan port | 19132/UDP | 25565/TCP |
| Yetki dosyası | permissions.json (XUID) | ops.json (UUID) |
| Erişim listesi | allowlist.json | whitelist.json |
| Eklenti | Bukkit/Spigot çalışmaz | Paper, Spigot eklentileri |
| Genişletme | Behavior pack + Script API | Plugin ve mod ekosistemi |
| Mimari desteği | Yalnızca x86-64 | x86-64 ve ARM |
Kullanıcı kitleniz ağırlıklı olarak telefonda oynuyorsa BDS doğru tercihtir. Sürümler ve platform farkları hakkında genel bir bakış için Minecraft PE / Bedrock sunucu kurulumu sayfasına bakabilirsiniz.
Donanım ve Sistem Gereksinimleri#
BDS tek süreç hâlinde çalışır ve dünya üretimi ile varlık (entity) hesapları büyük ölçüde tek çekirdeğe yüklenir. Bu yüzden çekirdek sayısı değil saat hızı belirleyicidir; yüksek frekanslı AMD Ryzen işlemciler Bedrock tarafında da doğru seçimdir.
| Oyuncu sayısı | RAM | İşlemci | Disk |
|---|---|---|---|
| 2-10 oyuncu | 8 GB | AMD Ryzen 9 3900X ve üzeri | 50 GB NVMe SSD |
| 10-30 oyuncu | 10-12 GB | AMD Ryzen 9 7900X | 50 GB NVMe SSD |
| 30-60 oyuncu | 16 GB | AMD Ryzen 9 7900X / 7950X | 100 GB NVMe SSD |
| 60+ oyuncu, çok dünyalı | 32 GB ve üzeri | AMD Ryzen 9 7950X | 100 GB+ NVMe SSD |
Disk tarafında NVMe SSD şart: Bedrock dünyaları LevelDB tabanlıdır ve sürekli küçük okuma/yazma yapar, mekanik diskte oyuncular chunk yüklenmesini tıkanma olarak hisseder. Kapasite planlaması için oyuncu sayısına göre RAM tablosuna da göz atın. Hazır bir altyapı arıyorsanız Batihost’un Bedrock ve MCPE sunucu paketleri Türkiye lokasyonunda Ryzen donanımla sunulur.
cannot execute binary file: Exec format error hatası verir. Sunucu siparişi verirken mimariyi mutlaka kontrol edin.Ubuntu Sunucusunu Hazırlama#
SSH ile sunucuya bağlandıktan sonra sistemi güncelleyip gerekli paketleri kurun. BDS’i root olarak çalıştırmak güvenli değildir; ayrı bir sistem kullanıcısı açın.
-
Paketleri güncelleyin ve bağımlılıkları kurun#
Ubuntu 24.04’te libcurl paketinin adı
libcurl4t64’tür; 22.04 ve Debian 12’delibcurl4olarak geçer.sudo apt update && sudo apt upgrade -y sudo apt install -y unzip curl wget openssl ca-certificates libcurl4t64 # Ubuntu 22.04 / Debian 12 için: # sudo apt install -y unzip curl wget openssl ca-certificates libcurl4 -
Ayrı bir kullanıcı ve dizin oluşturun#
Sunucu dosyaları
/opt/bedrockaltında tutulur ve sahibiminecraftkullanıcısı olur.sudo adduser --disabled-password --gecos "" minecraft sudo mkdir -p /opt/bedrock sudo chown -R minecraft:minecraft /opt/bedrock -
Kullanıcıya geçin#
Bundan sonraki tüm işlemleri bu kullanıcıyla yapın.
sudo -u minecraft -s cd /opt/bedrock
BDS Paketini İndirme ve Açma#
Bedrock Dedicated Server’ın Linux paketi resmî indirme sayfasından alınır. Sürüm numarası sık değiştiği için sabit bir dosya adı yerine sayfadaki güncel “Ubuntu Server” bağlantısını kopyalayıp kullanın.
-
Bedrock Dedicated Server — Ubuntu/Linux paketiÖnerilenİndir
-
BDS sürüm arşivi ve dokümantasyonuİndir
Bağlantılar resmî kaynaklara gider. Üçüncü taraf sitelerden BDS paketi indirmeyin; değiştirilmiş ikili dosyalar sunucunuzu riske atar.
İndirme sayfasında lisans onay kutusunu işaretledikten sonra bağlantı etkinleşir. Bağlantı adresini kopyalayıp sunucuda şu şekilde indirin:
cd /opt/bedrock
wget -U "Mozilla/5.0" -O bedrock-server.zip "KOPYALADIGINIZ_BAGLANTI"
unzip bedrock-server.zip
chmod +x bedrock_server
ls -l
Arşiv açıldığında dizinde şu yapı oluşur:
/opt/bedrock/
├── bedrock_server <- çalıştırılabilir ikili
├── server.properties <- ana yapılandırma
├── allowlist.json <- erişim listesi
├── permissions.json <- operatör yetkileri
├── behavior_packs/
├── resource_packs/
├── definitions/
└── worlds/ <- dünya verileri (yedeklenecek klasör)
İlk çalıştırma testi için:
cd /opt/bedrock
LD_LIBRARY_PATH=. ./bedrock_server
LD_LIBRARY_PATH=. olmadan sunucu error while loading shared libraries: libCrypto.so benzeri bir hata verip kapanır. BDS kendi paylaşımlı kütüphanelerini kendi dizininde taşır ve bunları bulabilmek için bu değişkene ihtiyaç duyar. systemd birimine de aynı satırı eklemeniz gerekir.Konsolda Server started. satırını gördüğünüzde sunucu ayaktadır. Kapatmak için konsola stop yazın; süreci Ctrl+C ile öldürmek dünya verisini yarım kaydedebilir.
server.properties Ayarları#
Bedrock’un server.properties dosyası Java sürümüne benzer ama anahtarların bir kısmı farklıdır. nano ile açıp temel değerleri düzenleyin:
nano /opt/bedrock/server.properties
server-name=Batihost Bedrock Sunucusu
gamemode=survival
force-gamemode=false
difficulty=normal
allow-cheats=false
max-players=30
online-mode=true
allow-list=false
server-port=19132
server-portv6=19133
enable-lan-visibility=true
view-distance=12
tick-distance=4
player-idle-timeout=30
max-threads=0
level-name=Bedrock level
level-seed=
default-player-permission-level=member
texturepack-required=false
content-log-file-enabled=false
compression-threshold=1
correct-player-movement=false
| Anahtar | Ne işe yarar | Öneri |
|---|---|---|
| online-mode | Xbox Live doğrulaması | true bırakın |
| allow-list | allowlist.json’u zorunlu kılar | Kapalı sunucularda true |
| view-distance | Oyuncuya gönderilen chunk yarıçapı | 10-12 arası |
| tick-distance | Simülasyon yarıçapı (4-12) | 4, kalabalıkta düşürün |
| max-threads | Kullanılacak iş parçacığı sayısı | 0 (otomatik) |
| player-idle-timeout | Boşta kalan oyuncuyu atma süresi | 30 dakika |
| compression-threshold | Paket sıkıştırma eşiği | Varsayılan bırakın |
Performans sorunu yaşıyorsanız ilk müdahale tick-distance değerini düşürmektir; view-distance’i kısmak görsel kaliteyi düşürür ama simülasyon yükünü aynı oranda azaltmaz. Java tarafındaki karşılıkları merak ediyorsanız view distance ve simulation distance ayarları sayfasındaki mantık büyük ölçüde geçerlidir.
allowlist.json ve permissions.json ile Yetkilendirme#
Bedrock’ta operatör verme işlemi ops.json ile değil permissions.json ile yapılır ve oyuncular XUID ile tanımlanır. Önce oyuncunun bir kez bağlanmasını sağlayın, XUID’sini log’dan okuyun.
[
{
"permission": "operator",
"xuid": "2535412345678901"
},
{
"permission": "member",
"xuid": "2535498765432109"
}
]
İzin seviyeleri visitor, member ve operator’dür. Erişim listesi dosyası ise şöyledir:
[
{
"ignoresPlayerLimit": false,
"name": "OyuncuAdi"
}
]
Dosyaları elle düzenlemek yerine konsol komutlarını kullanmak daha güvenlidir; JSON söz dizimi hatası sunucunun açılışını engeller.
allowlist add OyuncuAdi
allowlist remove OyuncuAdi
allowlist list
allowlist reload
permission list
op OyuncuAdi
allow-list=true yaptıktan sonra listeye eklemeyi unuttuğunuz oyuncular “You are not on the allowlist” mesajı alır. Kendi hesabınızı listeye ekledikten sonra allowlist reload çalıştırın; sunucuyu yeniden başlatmanız gerekmez.19132/UDP Portunu Açma#
Bedrock trafiği tamamen UDP üzerinden akar. TCP kuralı yazmak hiçbir işe yaramaz; en sık yapılan hata budur.
sudo ufw allow 19132/udp comment 'Bedrock'
sudo ufw allow 19133/udp comment 'Bedrock IPv6'
sudo ufw status numbered
Kuralın gerçekten uygulandığını ve sürecin portu dinlediğini doğrulayın:
sudo ss -ulnp | grep 19132
Çıktıda bedrock_server süreci görünmüyorsa sunucu çalışmıyordur veya farklı bir port yapılandırılmıştır. UFW söz dizimi, IP kısıtlama ve teşhis adımları için UFW ile Minecraft portu açma sayfasına bakın. Sunucuya IP yerine alan adı vermek istiyorsanız domain bağlama ve SRV kaydı rehberi Bedrock için de yol gösterir.
systemd Servisi ile 7/24 Çalıştırma#
SSH oturumu kapandığında sunucunun düşmemesi için BDS’i bir systemd servisine bağlayın. Konsola komut yazabilmek istiyorsanız süreci screen içinde başlatan sürüm daha kullanışlıdır.
sudo apt install -y screen
sudo nano /etc/systemd/system/bedrock.service
[Unit]
Description=Minecraft Bedrock Dedicated Server
After=network.target
[Service]
Type=simple
User=minecraft
Group=minecraft
WorkingDirectory=/opt/bedrock
Environment=LD_LIBRARY_PATH=.
ExecStart=/usr/bin/screen -DmS bedrock /opt/bedrock/bedrock_server
ExecStop=/usr/bin/screen -p 0 -S bedrock -X eval 'stuff "stop\\015"'
Restart=on-failure
RestartSec=10
[Install]
WantedBy=multi-user.target
Servisi devreye alın:
sudo systemctl daemon-reload
sudo systemctl enable --now bedrock
sudo systemctl status bedrock
sudo journalctl -u bedrock -f
Konsola bağlanmak için sudo -u minecraft screen -r bedrock komutunu kullanın, çıkmak için Ctrl+A ardından D tuşlayın. Birim dosyasının ayrıntıları, otomatik yeniden başlatma politikaları ve günlük yönetimi için systemd servisi oluşturma ve screen ve tmux kullanımı sayfalarına bakın.
Yedekleme ve Güncelleme#
Bedrock dünyaları çalışırken kopyalanırsa bozuk yedek üretir. BDS bunun için üç konsol komutu sunar: save hold yazma işlemlerini duraklatır, save query kopyalanabilir dosyaların listesini verir, save resume normale döner.
# Konsolda sırasıyla:
save hold
save query
# ... dosyalar listelendikten sonra kopyayı alın ...
save resume
Basit bir yedek betiği için sunucuyu kısa süre durdurmak da yeterlidir:
sudo systemctl stop bedrock
tar -czf /var/backups/bedrock-$(date +%F-%H%M).tar.gz -C /opt/bedrock worlds server.properties allowlist.json permissions.json
sudo systemctl start bedrock
Güncelleme yaparken dünya ve yapılandırma dosyalarını korumak zorundasınız:
cd /opt/bedrock
sudo systemctl stop bedrock
wget -U "Mozilla/5.0" -O yeni-bds.zip "KOPYALADIGINIZ_BAGLANTI"
unzip -o yeni-bds.zip -x "worlds/*" "server.properties" "allowlist.json" "permissions.json"
chmod +x bedrock_server
sudo systemctl start bedrock
-x parametrelerini yazmadan unzip -o çalıştırırsanız server.properties, allowlist.json ve permissions.json dosyaları varsayılanlarla ezilir; operatör listeniz ve tüm ayarlarınız kaybolur. Güncelleme öncesi yedek almak pazarlık konusu değildir. Yedek stratejisi için Minecraft sunucu yedekleme rehberine bakın.Sık Karşılaşılan Hatalar#
- error while loading shared libraries
LD_LIBRARY_PATH=.eksiktir. Komut satırında değişkeni verin, systemd birimindeEnvironment=LD_LIBRARY_PATH=.satırını ekleyin.- Permission denied
chmod +x bedrock_serverçalıştırılmamıştır ya da dosyaların sahibiminecraftkullanıcısı değildir.sudo chown -R minecraft:minecraft /opt/bedrockile düzeltin.- Exec format error
- Sunucu ARM mimarisindedir veya Windows paketini indirmişsinizdir. Linux (bin-linux) paketini ve x86-64 bir makineyi kullanın.
- Oyuncular sunucuyu göremiyor
- 19132 UDP kuralı yazılmamıştır. TCP kuralı Bedrock için işe yaramaz.
- Unable to start server / port in use
- Aynı portu dinleyen ikinci bir örnek vardır.
sudo ss -ulnp | grep 19132ile bulup durdurun ya daserver-portdeğerini değiştirin. - Sunucu açılıp hemen kapanıyor
- Genellikle bozuk JSON’dur.
permissions.jsonveallowlist.jsondosyalarındaki virgül ve köşeli parantezleri kontrol edin.
Bedrock’a özgü olmayan genel sorunlarda (disk dolması, düşük TPS, ağ gecikmesi) Minecraft sunucu hataları ve çözümleri sayfası yol gösterir. Sunucunun Linux tarafındaki genel kurulum akışını gözden geçirmek isterseniz Linux ve Ubuntu üzerinde Minecraft sunucu kurulumu rehberi ana referanstır.
Özetle#
Ubuntu’da Bedrock Dedicated Server kurulumu dört adımdır: bağımlılıkları kurun, ZIP paketini /opt/bedrock altına açın, LD_LIBRARY_PATH=. ile çalıştırın ve 19132/UDP portunu UFW’de açın. Java kurmanıza gerek yoktur, ama allowlist.json, permissions.json ve XUID mantığına alışmanız gerekir.
Kurulumu kalıcı hâle getirmek için systemd birimi yazın, konsola erişimi screen ile koruyun ve güncellemede unzip -o komutuna -x "worlds/*" parametresini eklemeyi asla unutmayın. 8 GB RAM, yüksek frekanslı Ryzen işlemci ve NVMe SSD ile başlayan bir yapılandırma, 10 oyunculu bir Bedrock sunucusunu rahatlıkla taşır; oyuncu sayısı arttıkça RAM ve disk kapasitesini tablodaki değerlere göre yükseltin.