Minecraft adalah salah satu game paling populer sepanjang masa. Ini adalah video game kotak pasir, yang memungkinkan pemainnya menjelajahi dunia tanpa batas dan membangun segala sesuatu mulai dari rumah sederhana hingga gedung pencakar langit besar.
Tutorial ini mencakup instalasi dan konfigurasi Server Minecraft di Ubuntu 18.04. Kami akan menggunakan Systemd untuk menjalankan server Minecraft dan mcrcon
utilitas untuk menghubungkan ke instance yang sedang berjalan. Kami juga akan menunjukkan cara membuat cronjob yang melakukan pencadangan server biasa.
Instruksi yang sama berlaku untuk Ubuntu 16.04 dan semua distribusi berbasis Ubuntu, termasuk Linux Mint dan Elementary OS.
Prasyarat #
Pengguna yang Anda masuki harus memiliki hak sudo untuk dapat menginstal paket.
Instal paket yang diperlukan untuk membangun mcrcon
alat:
sudo apt update
sudo apt install git build-essential
Menginstal Java Runtime Environment #
Minecraft membutuhkan Java 8 atau lebih tinggi. Karena Server Minecraft tidak memerlukan antarmuka pengguna grafis, 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.
Instal paket OpenJRE 8 tanpa kepala dengan menjalankan:
sudo apt install openjdk-8-jre-headless
Verifikasi instalasi dengan mencetak versi Java:
java -version
openjdk version "1.8.0_212"
OpenJDK Runtime Environment (build 1.8.0_212-8u212-b03-0ubuntu1.18.04.1-b03)
OpenJDK 64-Bit Server VM (build 25.212-b03, mixed mode)
Membuat Pengguna Minecraft #
Untuk tujuan keamanan, Minecraft tidak boleh dijalankan di bawah pengguna root. Kami akan membuat pengguna dan grup sistem baru dengan direktori home /opt/minecraft
yang akan menjalankan server Minecraft:
sudo useradd -r -m -U -d /opt/minecraft -s /bin/bash minecraft
Kami tidak akan menetapkan kata sandi untuk pengguna ini. Ini adalah praktik keamanan yang baik karena pengguna ini tidak akan dapat masuk melalui SSH. Untuk mengubah ke minecraft
pengguna Anda harus masuk ke server sebagai root atau pengguna dengan hak sudo.
Menginstal Minecraft di Ubuntu #
Sebelum memulai proses instalasi, pastikan Anda beralih ke minecraft
pengguna.
sudo su - minecraft
Jalankan perintah berikut untuk membuat 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
Ketika kloning selesai, pindah ke direktori repositori:
cd ~/tools/mcrcon
Mulai kompilasi mcrcon
utilitas 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.
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 panduan ini, kami 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 Anda memulai server untuk pertama kalinya, server akan 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, kami 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, kita perlu mengedit server.properties
file untuk mengaktifkan protokol rcon dan mengatur kata sandi rcon. Buka file menggunakan editor teks Anda:
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. Saat berada di sini, Anda juga dapat menyesuaikan properti default server. Untuk informasi lebih lanjut tentang kemungkinan pengaturan, kunjungi server.propertiespage.
Membuat File Unit Systemd #
Untuk menjalankan Minecraft sebagai layanan, kami 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 /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 muat ulang konfigurasi manajer systemd:
sudo systemctl daemon-reload
Sekarang Anda dapat memulai server Minecraft dengan menjalankan:
sudo systemctl start 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: 11262 (java)
Tasks: 19 (limit: 2319)
CGroup: /system.slice/minecraft.service
`-11262 /usr/bin/java -Xmx1024M -Xms512M -jar server.jar nogui
Terakhir, aktifkan layanan Minecraft untuk dimulai secara otomatis saat boot:
sudo systemctl enable minecraft
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 menjalankan 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!
>
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 harus membuat alias bash.