Minecraft adalah salah satu game paling populer sepanjang masa. Ini adalah video game kotak pasir tentang menempatkan balok dan melakukan petualangan.
Dalam tutorial ini, kita akan melalui langkah-langkah yang diperlukan untuk menginstal dan mengkonfigurasi Server Minecraft di CentOS 7. Kita akan menggunakan Systemd untuk menjalankan server Minecraft dan mcrcon
utilitas untuk menghubungkan ke instance yang sedang berjalan. Kami juga akan menunjukkan cara menjadwalkan pencadangan server otomatis menggunakan tugas Cron.
Prasyarat #
Pengguna yang Anda masuki harus memiliki hak sudo untuk dapat menginstal paket.
Instal paket yang diperlukan untuk membangun mcrcon
alat:
sudo yum install git
sudo yum group install "Development Tools"
Menginstal Java Runtime Environment #
Minecraft membutuhkan Java 8 atau lebih tinggi. Karena Server Minecraft tidak memerlukan antarmuka pengguna grafis, kami akan menginstal openjdk versi tanpa kepala. Versi ini lebih cocok untuk aplikasi server karena memiliki ketergantungan yang lebih sedikit dan menggunakan lebih sedikit sumber daya sistem.
Instalasi Java cukup sederhana, jalankan saja:
sudo yum install java-1.8.0-openjdk-headless
Verifikasi instalasi dengan mencetak versi Java:
java -version
openjdk version "1.8.0_191"
OpenJDK Runtime Environment (build 1.8.0_191-b12)
OpenJDK 64-Bit Server VM (build 25.191-b12, mixed mode)
Membuat Pengguna Minecraft #
Menjalankan layanan sebagai Minecraft di bawah pengguna root tidak disarankan karena alasan keamanan.
Kami akan membuat pengguna dan grup sistem baru minecraft
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 CentOS #
Sebelum memulai proses instalasi, pastikan Anda beralih ke penggunaminecraft
:
sudo su - minecraft
Buat tiga direktori baru di dalam direktori home pengguna menggunakan perintah berikut:
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 pindah ke ~/tools
direktori dan mengkloning Tiiffi/mcrcon
repositori dari GitHub menggunakan perintah berikut:
cd ~/tools && git clone https://github.com/Tiiffi/mcrcon.git
Setelah repositori dikloning, navigasikan ke direktorinya:
cd ~/tools/mcrcon
Buat mcrcon
utilitas menggunakan kompiler GCC:
gcc -std=gnu11 -pedantic -Wall -Wextra -O2 -s -o mcrcon mcrcon.c
Setelah selesai, uji 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 #
Arahkan 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.
[14:33:44] [main/ERROR]: Failed to load properties from file: server.properties
[14:33:45] [main/WARN]: Failed to load eula.txt
[14:33:45] [main/INFO]: You need to agree to the EULA in order to run the server. Go to eula.txt for more info.
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, buka server.properties
file, aktifkan protokol rcon dan atur kata sandi rcon:
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 beri tahu systemd bahwa kami membuat file unit baru:
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: disabled)
Active: active (running) since Sun 2019-05-19 23:49:18 PDT; 9min ago
Main PID: 17356 (java)
CGroup: /system.slice/minecraft.service
└─17356 /usr/bin/java -Xmx1024M -Xms512M -jar server.jar nogui --noconsole
Aktifkan layanan Minecraft untuk dimulai secara otomatis saat boot:
sudo systemctl enable minecraft
Menyesuaikan Firewall #
Jika server Anda dilindungi oleh firewalluntuk mengakses server Minecraft dari luar jaringan lokal Anda, Anda perlu membuka port 25565
:
sudo firewall-cmd --permanent --zone=public --add-port=25565/tcp
sudo firewall-cmd --reload
Mengonfigurasi Cadangan #
Di bagian ini, kita akan membuat skrip cadangan dan cronjob untuk mencadangkan server Minecraft secara otomatis.
Mulailah dengan beralih ke minecraft
pengguna:
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
Jadikan skrip dapat dieksekusi dengan mengeluarkan chmod
berikut ini perintah:
chmod +x /opt/minecraft/tools/backup.sh
Buka file crontab dan buat cronjob yang akan berjalan sekali sehari secara otomatis pada waktu yang tetap:
crontab -e
Kami akan menjalankan skrip cadangan setiap hari pada pukul 23:00:
0 23 * * * /opt/minecraft/tools/backup.sh
Mengakses Minecraft Console #
Untuk mengakses Konsol Minecraft, Anda dapat menggunakan mcrcon
utilitas.
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!
>
Jika Anda secara teratur terhubung ke konsol Minecraft, alih-alih mengetik perintah panjang ini, Anda harus membuat alias bash.