Raspberry Pi dapat digunakan di banyak proyek berbeda. Salah satu penggunaan Raspberry Pi yang paling populer adalah mengubah Raspberry Pi menjadi game server.

Dalam tutorial ini, kami akan memandu Anda melalui proses menginstal dan mengkonfigurasi Minecraft Server di Raspberry Pi 3 atau 4.

Minecraft adalah salah satu game paling populer hingga saat ini. Minecraft adalah permainan video sandbox yang memungkinkan para pemainnya menjelajahi dunia tanpa batas dan membangun segalanya mulai dari rumah sederhana hingga gedung pencakar langit besar.

Harap dicatat, Minecraft mungkin tidak berjalan mulus di sistem dengan sumber daya rendah.

Prasyarat

Kami berasumsi bahwa Raspbian terinstall di Raspberry Pi Anda. Minecraft Server tidak memerlukan antarmuka grafis, jadi rekomendasi kami adalah menggunakan image Raspbian Stretch Lite dan mengaktifkan SSH di Raspberry Pi. Dengan cara ini, Raspberry Pi Anda akan memiliki lebih banyak daya pemrosesan dan memori yang tersedia untuk menjalankan Minecraft server .

Kita akan menggunakan utilitas mcrcon untuk terhubung ke Minecraft server. Instal paket yang diperlukan untuk build tool mcrcon :

sudo apt update
sudo apt install git build-essential

Aktifkan driver GL menggunakan alat raspi-config:

raspi-config
  1. Arahkan ke “Advanced Options” menggunakan tombol naik atau turun dan tekan Enter.
  2. Pilih “GL Driver” dan tekan Enter.
  3. Pilih “GL (Fake KMS)”, tekan Enter.
  4. Pilih tombol “Finish”, tekan Enter. Ketika diminta “Would you like to reboot now?” pilih “Yes” dan tekan Enter.

Setelah Pi kembali online, lanjutkan ke langkah berikutnya.

Install Java Runtime Environment

Minecraft membutuhkan Java 8 atau lebih tinggi. Karena Server Minecraft tidak memerlukan antarmuka grafis, kita akan menginstal versi JRE headless. Versi ini lebih cocok untuk aplikasi server karena memiliki lebih sedikit dependensi dan efisiensi dalam penggunaan sumber daya sistem.

Instal paket OpenJRE 8 headless dengan menjalankan:

sudo apt install openjdk-8-jre-headless

Verifikasi pemasangan dengan print versi java:

java -version
openjdk version "1.8.0_212"
OpenJDK Runtime Environment (build 1.8.0_212-8u212-b01-1+rpi1-b01)
OpenJDK Client VM (build 25.212-b01, mixed mode)

Buat User Minecraft

Untuk tujuan keamanan, Minecraft tidak boleh dijalankan di oleh user root. Kita akan membuat user sistem baru dan grup dengan direktori home /opt/minecraft yang akan menjalankan server Minecraft:

sudo useradd -r -m -U -d /opt/minecraft -s /bin/bash minecraft

Kita tidak akan menetapkan kata sandi untuk user minecraft. Ini adalah praktik keamanan yang baik karena user ini tidak akan dapat masuk melalui SSH.

Install Minecraft di Debian

Sebelum memulai dengan proses instalasi, pastikan Anda beralih ke userminecraft.

sudo su - minecraft

Jalankan perintah berikut untuk membuat dua direktori baru di dalam direktori home user:

mkdir -p ~/{tools,server}
  • Direktori tools akan menyimpan klien mcrcon dan skrip backup.
  • Direktori server akan berisi server game Minecraft dan datanya.

Download dan Compiling mcrcon

RCON adalah protokol yang memungkinkan Anda terhubung ke server Minecraft dan menjalankan perintah. mcron adalah klien RCON yang dibangun dalam Bahasa pemrograman C.

Kita akan mengunduh source code dari GitHub dan membuat binary mcrcon.

Mulailah dengan menavigasi ke direktori ~/tools dan mengkloning repositori Tiiffi/mcrcon dari GitHub menggunakan perintah berikut:

cd ~/tools && git clone https://github.com/Tiiffi/mcrcon.git

Ketika kloning selesai, beralihlah ke direktori repositori:

cd ~/tools/mcrcon

Mulai compile utilitas mcrcon dengan mengetik:

gcc -std=gnu11 -pedantic -Wall -Wextra -O2 -s -o mcrcon mcrcon.c

Setelah selesai, Anda dapat mengujinya dengan mengetik:

./mcrcon -h

Outputnya akan terlihat seperti ini:

Usage: mcrcon [OPTIONS]... [COMMANDS]...
Sends rcon commands to Minecraft server.

...

mcrcon 0.6.1 (built: Sep 19 2019 20:52:13)
Report bugs to tiiffi_at_gmail_dot_com or https://github.com/Tiiffi/mcrcon/issues/

Download Minecraft Server

Ada beberapa mod server Minecraft seperti Craftbukkit atau Spigot yang memungkinkan Anda untuk menambahkan fitur (plugins) di server dan menyesuaikan serta mengubah pengaturan server. Dalam panduan ini, kami akan memasang server vanilla resmi Minecraft Mojang terbaru.

File arsip Java (JAR) server Minecraft terbaru adalah variabel untuk diunduh dari halaman unduhan Minecraft.

Pada saat penulisan, versi terbaru adalah 1.14.4. Sebelum melanjutkan dengan langkah selanjutnya, Anda harus memeriksa halaman unduhan untuk versi baru.

Jalankan perintah wget berikut untuk mengunduh file jar Minecraft di direktori ~/server:

wget https://launcher.mojang.com/v1/objects/3dc3d84a581f14691199cf6831b71ed1296a9fdf/server.jar -P ~/server

Konfigurasi Server Minecraft di Raspberry Pi

Setelah unduhan selesai, navigasikan ke direktori ~/server dan mulai server Minecraft:

cd ~/server
java -Xms512M -Xmx768M -jar server.jar nogui

Ketika Anda memulai server untuk pertama kalinya dan membuat file  server.properties dan eula.txt dan berhenti.

[21:06:23] [main/ERROR]: Failed to load properties from file: server.properties
[21:06:24] [main/WARN]: Failed to load eula.txt
[21:06:24] [main/INFO]: You need to agree to the EULA in order to run the server. Go to eula.txt for more info.

Seperti yang Anda lihat dari output di atas, kita harus menyetujui EULA Minecraft untuk menjalankan server. Buka file eula.txt dan ubah eula=false menjadi eula=true:

nano ~/server/eula.txt
#By changing the setting below to TRUE you are indicating your agreement to our EULA (https://account.mojang.com/documents/minecraft_eula).
#Thu Sep 19 21:06:24 UTC 2019
eula=true

Tutup dan simpan file.

Selanjutnya, kita perlu mengedit file server.properties untuk mengaktifkan protokol rcon dan mengatur kata sandi rcon. Buka file menggunakan editor teks Anda:r:

nano ~/server/server.properties

Temukan baris berikut dan perbarui nilainya seperti yang ditunjukkan di bawah ini:

rcon.port=25575
rcon.password=ganti-dengan-password
enable-rcon=true

Jangan lupa untuk mengubah ganti-dengan-password menjadi sesuatu yang lebih aman. Jika tidak ingin terhubung ke server Minecraft dari lokasi jarak jauh, pastikan port rcon diblokir oleh firewall Anda.

Saat di sini, Anda juga dapat menyesuaikan properti default server. Untuk informasi lebih lanjut tentang pengaturan yang tersedia, periksa halaman server.properties.

Membuat Unit File Systemd

Untuk menjalankan Minecraft sebagai service, kita akan membuat file unit Systemd baru.

Beralih kembali ke pengguna sudo Anda dengan mengetikkan exit.

Buka editor teks Anda dan buat file bernama minecraft.service di dalam direktori /etc/systemd/system/:

sudo nano /etc/systemd/system/minecraft.service

Kemudian Paste konfigurasi berikut:

[Unit]
Description=Minecraft Server
After=network.target

[Service]
User=minecraft
Nice=1
KillMode=none
SuccessExitStatus=0 1
ProtectHome=true
ProtectSystem=full
PrivateDevices=true
NoNewPrivileges=true
WorkingDirectory=/opt/minecraft/server
ExecStart=/usr/bin/java -Xmx768M -Xms512M -jar server.jar nogui
ExecStop=/opt/minecraft/tools/mcrcon/mcrcon -H 127.0.0.1 -P 25575 -p g4nt!-d3ng4n-p4s$woRd stop

[Install]
WantedBy=multi-user.target

Ubah flag Xmx dan Xms sesuai dengan sumber daya server Anda. flag Xmx mendefinisikan kumpulan alokasi memori maksimum untuk Java virtual machine (JVM), sementara Xms mendefinisikan kumpulan alokasi memori awal. Pastikan juga Anda menggunakan port dan kata sandi rcon yang benar.

Simpan dan tutup file dan reload konfigurasi systemd manager:

sudo systemctl daemon-reload

Sekarang Anda dapat memulai server Minecraft dengan menjalankan:

sudo systemctl start minecraft

Pertama kali Anda memulai layanan ini akan menghasilkan beberapa file konfigurasi dan direktori termasuk Minecraft world.

Periksa status layanan dengan perintah berikut:

sudo systemctl status minecraft
● minecraft.service - Minecraft Server
   Loaded: loaded (/etc/systemd/system/minecraft.service; enabled; vendor preset: enabled)
   Active: active (running) since Thu 2019-09-19 21:11:58 BST; 1min 27s ago
 Main PID: 1992 (java)
    Tasks: 17 (limit: 1604)
   Memory: 338.9M
   CGroup: /system.slice/minecraft.service
           └─1992 /usr/bin/java -Xmx768M -Xms512M -jar server.jar nogui

Pertama kali Anda memulai layanan, ini akan menghasilkan beberapa file konfigurasi dan direktori, termasuk world dalam Minecraft. Gunakan perintah tail untuk memantau file log server:

tail -f /opt/minecraft/server/logs/latest.log

Setelah server Minecraft dimulai output akan terlihat seperti ini:

[21:19:25] [Server-Worker-3/INFO]: Preparing spawn area: 98%
[21:19:25] [Server thread/INFO]: Time elapsed: 201586 ms
[21:19:25] [Server thread/INFO]: Done (418.339s)! For help, type "help"
[21:19:25] [Server thread/INFO]: Starting remote control listener
[21:19:25] [RCON Listener #1/INFO]: RCON running on 0.0.0.0:25575

Aktifkan layanan Minecraft untuk memulai otomatis saat booting :

sudo systemctl enable minecraft

Cara Mengakses Konsol Minecraft

Untuk mengakses Konsol Minecraft, Anda dapat menggunakan utilitas mcrcon. Anda perlu menentukan host, port rcon, kata sandi rcon dan menggunakan switch -t yang memungkinkan mode terminal mcrcon:

/opt/minecraft/tools/mcrcon/mcrcon -H 127.0.0.1 -P 25575 -p ganti-dengan-password-anda -t
Logged in. Type "Q" to quit!>

Saat mengakses Konsol Minecraft dari lokasi yang jauh, pastikan port rcon tidak diblokir.

Jika Anda secara teratur terhubung ke konsol Minecraft, alih-alih mengetik perintah panjang ini, Anda dapat membuat alias bash.

Kesimpulan

Anda telah berhasil menginstal Minecraft server di Raspberry Pi. Harap dicatat, Minecraft mungkin tidak berjalan mulus di sistem dengan sumber daya rendah.