Minecraft adalah salah satu game paling populer sepanjang masa. Ini adalah video game kotak pasir tentang membangun berbagai struktur dan melakukan petualangan.
Tutorial ini menjelaskan cara menginstal dan mengkonfigurasi Server Minecraft di Debian 9. Kami akan menggunakan Systemd untuk menjalankan server Minecraft dan mcrcon
utilitas untuk terhubung ke instance yang sedang berjalan. Kami juga akan menunjukkan cara membuat cronjob yang akan melakukan pencadangan server biasa.
Prasyarat #
Pengguna yang Anda masuki harus memiliki hak sudo.
Instal paket yang diperlukan untuk membangun mcrcon
alat:
sudo apt update
sudo apt install git build-essential
Menginstal Java Runtime Environment #
Minecraft membutuhkan Java 8untuk diinstal pada sistem.
Kami akan menginstal versi JRE tanpa kepala. Versi ini lebih cocok untuk aplikasi server karena memiliki ketergantungan yang lebih sedikit dan menggunakan lebih sedikit sumber daya sistem:
sudo apt install openjdk-8-jre-headless
Verifikasi instalasi dengan menjalankan:
java -version
openjdk version "1.8.0_212"
OpenJDK Runtime Environment (build 1.8.0_212-8u212-b01-1~deb9u1-b01)
OpenJDK 64-Bit Server VM (build 25.212-b01, mixed mode)
Membuat Pengguna Minecraft #
Langkah selanjutnya adalah membuat pengguna dan grup sistem baru dengan direktori home /opt/minecraft
yang akan menjalankan server Minecraft. Untuk melakukannya jalankan perintah berikut:
sudo useradd -r -m -U -d /opt/minecraft -s /bin/bash minecraft
Pengguna tidak akan memiliki kata sandi. Ini adalah praktik keamanan yang baik karena pengguna ini tidak akan dapat masuk melalui SSH.
Menginstal Minecraft di Debian #
Sebelum memulai proses instalasi, pastikan Anda beralih ke minecraft
pengguna.
sudo su - minecraft
Buat tiga direktori baru di dalam direktori home pengguna:
mkdir -p ~/{backups,tools,server}
backups
direktori akan menyimpan cadangan server Anda. Nanti Anda dapat menyinkronkan direktori ini ke server cadangan jarak jauh Anda.tools
direktori akan menyimpanmcrcon
klien dan skrip cadangan.server
direktori akan berisi server Minecraft yang sebenarnya dan datanya.
Mengunduh dan Mengkompilasi mcrcon #
RCON adalah protokol yang memungkinkan Anda terhubung ke server Minecraft dan menjalankan perintah. klien mcronis RCON dibangun di C.
Kami akan mengunduh kode sumber dari GitHub dan membangun mcrcon
biner.
Mulailah dengan menavigasi ke ~/tools
direktori dan mengkloning Tiiffi/mcrcon
repositori dari GitHub menggunakan perintah berikut:
cd ~/tools && git clone https://github.com/Tiiffi/mcrcon.git
Beralih ke direktori repositori:
cd ~/tools/mcrcon
Mulai kompilasi mcrcon
utilitas dengan menjalankan:
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.
Option:
-h Print usage
-H Server address
-P Port (default is 25575)
-p Rcon password
-t Interactive terminal mode
-s Silent mode (do not print received packets)
-c Disable colors
-r Output raw packets (debugging and custom handling)
-v Output version information
Server address, port and password can be set using following environment variables:
MCRCON_HOST
MCRCON_PORT
MCRCON_PASS
Command-line options will override environment variables.
Rcon commands with arguments must be enclosed in quotes.
Example:
mcrcon -H my.minecraft.server -p password "say Server is restarting!" save-all stop
mcrcon 0.6.1 (built: May 19 2019 23:39:16)
Report bugs to tiiffi_at_gmail_dot_com or https://github.com/Tiiffi/mcrcon/issues/
Mengunduh Server Minecraft #
Ada beberapa mod server Minecraft seperti Craftbukkitor Spigot yang memungkinkan Anda untuk menambahkan fitur (plugin) di server Anda dan selanjutnya menyesuaikan dan mengubah pengaturan server. Dalam tutorial ini, kita akan menginstal server vanilla Minecraft resmi terbaru dari Mojang.
File arsip Java (JAR) server Minecraft terbaru tersedia untuk diunduh dari halaman unduhan Minecraft.
Pada saat penulisan, versi terbaru adalah 1.14.1
. Sebelum melanjutkan ke langkah berikutnya, Anda harus memeriksa halaman unduhan untuk versi baru.
Jalankan wget
berikut ini perintah untuk mengunduh file jar Minecraft di ~/server
direktori:
wget https://launcher.mojang.com/v1/objects/ed76d597a44c5266be2a7fcd77a8270f1f0bc118/server.jar -P ~/server
Mengonfigurasi Server Minecraft #
Setelah unduhan selesai, navigasikan ke ~/server
direktori dan mulai server Minecraft:
cd ~/server
java -Xmx1024M -Xms512M -jar server.jar nogui
Saat server dimulai untuk pertama kalinya, server menjalankan beberapa operasi dan membuat server.properties
dan eula.txt
file dan berhenti.
[23:41:44] [main/ERROR]: Failed to load properties from file: server.properties
[23:41:45] [main/WARN]: Failed to load eula.txt
[23:41:45] [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, Anda harus menyetujui EULA Minecraft untuk menjalankan server. Buka eula.txt
file dan ubah eula=false
ke eula=true
:
nano ~/server/eula.txt
~/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).
#Sun May 19 23:41:45 PDT 2019
eula=true
Tutup dan simpan file.
Selanjutnya, aktifkan protokol rcon dan atur kata sandi rcon dengan mengedit server.properties
berkas:
nano ~/server/server.properties
Temukan baris berikut dan perbarui nilainya seperti yang ditunjukkan di bawah ini:
~/server/server.propertiesrcon.port=25575
rcon.password=strong-password
enable-rcon=true
Jangan lupa ganti strong-password
ke sesuatu yang lebih aman. Jika Anda tidak ingin terhubung ke server Minecraft dari lokasi yang jauh, pastikan port rcon diblokir oleh firewall Anda. Anda juga dapat menyesuaikan properti default server. Untuk informasi lebih lanjut tentang kemungkinan pengaturan, kunjungi server.propertiespage.
Membuat File Unit Systemd #
Beralih kembali ke pengguna sudo Anda dengan mengetikkan exit
.
Buka editor teks Anda dan buat file bernama minecraft.service
di /etc/systemd/system/
:
sudo nano /etc/systemd/system/minecraft.service
Tempelkan konfigurasi berikut:
/etc/systemd/system/minecraft.service[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 -Xmx1024M -Xms512M -jar server.jar nogui
ExecStop=/opt/minecraft/tools/mcrcon/mcrcon -H 127.0.0.1 -P 25575 -p strong-password stop
[Install]
WantedBy=multi-user.target
Ubah Xmx
dan Xms
bendera sesuai dengan sumber daya server Anda. Xmx
flag mendefinisikan kumpulan alokasi memori maksimum untuk mesin virtual Java (JVM), sedangkan Xms
mendefinisikan kumpulan alokasi memori awal. Juga, pastikan Anda menggunakan rcon
yang benar port dan kata sandi.
Simpan dan tutup file dan beri tahu systemd bahwa kami membuat file unit baru:
sudo systemctl daemon-reload
Mulai dan aktifkan server Minecraft dengan menjalankan:
sudo systemctl start minecraft
sudo systemctl enable minecraft
Pertama kali Anda memulai layanan, itu akan menghasilkan beberapa file dan direktori konfigurasi termasuk dunia Minecraft.
Periksa status layanan dengan perintah berikut:
sudo systemctl status minecraft
● minecraft.service - Minecraft Server
Loaded: loaded (/etc/systemd/system/minecraft.service; disabled; vendor preset: enabled)
Active: active (running) since Sun 2019-05-19 23:49:18 PDT; 9min ago
Main PID: 7262 (java)
Tasks: 19 (limit: 4915)
CGroup: /system.slice/minecraft.service
└─7262 /usr/bin/java -Xmx1024M -Xms512M -jar server.jar nogui
Menyesuaikan Firewall #
Jika server Anda dilindungi oleh firewall dan Anda ingin mengakses server Minecraft dari luar jaringan lokal Anda, Anda perlu membuka port 25565
.
Untuk mengizinkan lalu lintas di port Minecraft default 25565
ketik perintah berikut:
sudo ufw allow 25565/tcp
Mengonfigurasi Cadangan #
Di bagian ini, kita akan membuat skrip shell cadangan dan cronjob untuk mencadangkan server Minecraft secara otomatis.
Mulailah dengan beralih ke penggunaminecraft
:
sudo su - minecraft
Buka editor teks Anda dan buat file berikut:
nano /opt/minecraft/tools/backup.sh
Tempelkan konfigurasi berikut:
/opt/minecraft/tools/backup.sh#!/bin/bash
function rcon {
/opt/minecraft/tools/mcrcon/mcrcon -H 127.0.0.1 -P 25575 -p strong-password "$1"
}
rcon "save-off"
rcon "save-all"
tar -cvpzf /opt/minecraft/backups/server-$(date +%F-%H-%M).tar.gz /opt/minecraft/server
rcon "save-on"
## Delete older backups
find /opt/minecraft/backups/ -type f -mtime +7 -name '*.gz' -delete
Simpan file dan buat skrip dapat dieksekusi dengan mengeluarkan chmod
berikut ini perintah:
chmod +x /opt/minecraft/tools/backup.sh
Selanjutnya, buat tugas cron yang akan berjalan sekali sehari secara otomatis pada waktu yang telah ditentukan.
Buka file crontab dengan mengetik:
crontab -e
Untuk menjalankan skrip cadangan setiap hari pada pukul 23:00, rekatkan baris berikut:
0 23 * * * /opt/minecraft/tools/backup.sh
Mengakses Minecraft Console #
Untuk mengakses Konsol Minecraft, Anda dapat menggunakan mcrcon
kegunaan. Sintaksnya adalah sebagai berikut, Anda perlu menentukan host, port rcon, kata sandi rcon dan menggunakan -t
sakelar yang mengaktifkan mcrcon
modus terminal:
/opt/minecraft/tools/mcrcon/mcrcon -H 127.0.0.1 -P 25575 -p strong-password -t
Logged in. Type "Q" to quit!
>
Untuk 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.