GNU/Linux >> Znalost Linux >  >> Ubuntu

Jak vytvořit Minecraft Server na Ubuntu 20.04

Minecraft je jednou z nejpopulárnějších her všech dob. Je to sandboxová videohra, kde hráči prozkoumávají nekonečné světy a staví různé stavby od jednoduchých domů až po tyčící se mrakodrapy.

Tento tutoriál vysvětluje, jak vytvořit server Minecraft na Ubuntu 20.04. Ke spuštění serveru Minecraft a mcrcon použijeme Systemd nástroj pro připojení k běžící instanci. Také vám ukážeme, jak vytvořit cronjob, který provádí pravidelné zálohování serveru.

Předpoklady #

Podle oficiálních stránek Minecraftu se jako minimální konfigurace pro typické nastavení doporučuje 4GB RAM.

Nainstalujte balíčky potřebné k sestavení mcrcon nástroj:

sudo apt updatesudo apt install git build-essential

Instalace Java Runtime Environment #

Minecraft vyžaduje Java 8 nebo vyšší. Minecraft Server nepotřebuje grafické uživatelské rozhraní, takže nainstalujeme bezhlavou verzi Javy. Tato verze je vhodnější pro serverové aplikace, protože má méně závislostí a využívá méně systémových prostředků.

Spuštěním následujícího příkazu nainstalujte balíček OpenJRE 11 bez hlavy:

sudo apt install openjdk-11-jre-headless

Ověřte instalaci vytištěním verze Java:

java -version
openjdk version "11.0.7" 2020-04-14
OpenJDK Runtime Environment (build 11.0.7+10-post-Ubuntu-3ubuntu1)
OpenJDK 64-Bit Server VM (build 11.0.7+10-post-Ubuntu-3ubuntu1, mixed mode, sharing)

Vytváření uživatele Minecraftu #

Z bezpečnostních důvodů by Minecraft neměl být spuštěn pod uživatelem root. Vytvoříme nový systémový uživatel a skupinu s domovským adresářem /opt/minecraft . Uživatel bude mít minimální potřebná oprávnění ke spuštění serveru Minecraft:

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

Tomuto uživateli nenastavíme heslo. Tímto způsobem se uživatel nebude moci přihlásit přes SSH a nemůže být ohrožen. Chcete-li přejít na minecraft uživatel, budete se muset přihlásit k serveru jako root nebo uživatel s právy sudo.

Instalace Minecraftu na Ubuntu #

Před zahájením procesu instalace přepněte na minecraft uživatel:

sudo su - minecraft

Spusťte následující příkaz k vytvoření tří nových adresářů v domovském adresáři uživatele:

mkdir -p ~/{backups,tools,server}
  • backups adresář bude ukládat zálohy vašeho serveru Minecraft. Tento adresář můžete synchronizovat se vzdáleným záložním serverem.
  • tools adresář bude obsahovat mcrcon klient a zálohovací skript.
  • server adresář bude obsahovat skutečný Minecraft server a jeho data.

Stahování a kompilace mcrcon #

RCON je protokol, který vám umožňuje připojit se k serverům Minecraft a provádět příkazy. Klient mcronis RCON napsaný v C.

Stáhneme si zdrojový kód z GitHubu a vytvoříme mcrcon binární.

Naklonujte Tiiffi/mcrcon úložiště z GitHubu do ~/tools/mcron adresář:

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

Po dokončení přepněte na mcron adresář a sestavte nástroj:

cd ~/tools/mcrcongcc -std=gnu11 -pedantic -Wall -Wextra -O2 -s -o mcrcon mcrcon.c

Po dokončení ověřte, že mcrcon byl úspěšně zkompilován vytištěním jeho verze:

./mcrcon -v

Výstup bude vypadat nějak takto:

mcrcon 0.7.1 (built: Jun 23 2020 15:49:44) - https://github.com/Tiiffi/mcrcon
Bug reports:
	tiiffi+mcrcon at gmail
	https://github.com/Tiiffi/mcrcon/issues/

Stahování serveru Minecraft #

Existuje několik modulů serveru Minecraft, jako je Craftbukkitor Spigot, které vám umožňují přidávat funkce (pluginy) na váš server a dále upravovat a vylepšovat nastavení serveru.

V této příručce nainstalujeme nejnovější oficiální vanilkový Minecraft server Mojang. Stejné pokyny platí pro instalaci dalších serverových modů.

Přejděte na stránku pro stahování Minecraftu a získejte odkaz ke stažení nejnovějšího archivního souboru Java serveru Minecraft (JAR). V době psaní tohoto článku je nejnovější verze 1.16 .

Stáhněte si soubor jar v ~/server adresář s wget :

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

Konfigurace serveru Minecraft #

Po dokončení stahování přepněte na ~/server adresář a spusťte server Minecraft:

cd ~/serverjava -Xmx1024M -Xms1024M -jar server.jar nogui

Při prvním spuštění server provede některé operace, vytvoří server.properties a eula.txt soubory a zastávky.

[17:35:14] [main/ERROR]: Failed to load properties from file: server.properties
[17:35:15] [main/WARN]: Failed to load eula.txt
[17:35:15] [main/INFO]: You need to agree to the EULA in order to run the server. Go to eula.txt for more info.

Chcete-li spustit server, musíte souhlasit s Minecraft EULA, jak je uvedeno ve výstupu výše. Otevřete eula.txt soubor a změňte eula=false na eula=true :

nano ~/server/eula.txt
~/server/eula.txt
eula=true

Zavřete a uložte soubor.

Dále otevřete server.properties a povolte protokol rcon a nastavte heslo rcon:

nano ~/server/server.properties

Vyhledejte následující řádky a aktualizujte jejich hodnoty, jak je znázorněno níže:

~/server/server.properties
rcon.port=25575
rcon.password=strong-password
enable-rcon=true
Nezapomeňte změnit strong-password na něco bezpečnějšího. Pokud se nechcete k serveru Minecraft připojovat ze vzdálených míst, ujistěte se, že port rcon je blokován vaším firewallem.

Zde můžete také upravit výchozí vlastnosti serveru. Další informace o nastavení serveru naleznete na stránce server.properties.

Vytváření souboru systémové jednotky #

Místo ručního spouštění serveru Minecraft vytvoříme soubor jednotky Systemd a spustíme Minecraft jako službu.

Přepněte zpět na uživatele sudo zadáním exit .

Otevřete textový editor a vytvořte soubor s názvem minecraft.service v /etc/systemd/system/ adresář:

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

Vložte následující konfiguraci:

/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 -Xms1024M -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

Upravte Xmx a Xms příznaky podle zdrojů vašeho serveru. Xmx příznak definuje maximální fond přidělení paměti pro virtuální stroj Java (JVM), zatímco Xms definuje počáteční fond alokace paměti. Také se ujistěte, že používáte správný rcon port a heslo.

Uložte soubor a znovu načtěte konfiguraci správce systému:

sudo systemctl daemon-reload

Nyní můžete spustit server Minecraft zadáním:

sudo systemctl start minecraft

Při prvním spuštění služba vygeneruje několik konfiguračních souborů a adresářů, včetně světa Minecraftu.

Zkontrolujte stav služby pomocí následujícího příkazu:

sudo systemctl status minecraft
● minecraft.service - Minecraft Server
     Loaded: loaded (/etc/systemd/system/minecraft.service; disabled; vendor preset: enabled)
     Active: active (running) since Tue 2020-06-23 17:48:44 UTC; 8s ago
   Main PID: 1338035 (java)
      Tasks: 15 (limit: 1074)
     Memory: 465.3M
     CGroup: /system.slice/minecraft.service
             └─1338035 /usr/bin/java -Xmx1024M -Xms1024M -jar server.jar nogui

Nakonec povolte automatické spuštění služby Minecraft při spouštění:

sudo systemctl enable minecraft

Úprava brány firewall #

Ubuntu se dodává s konfiguračním nástrojem brány firewall s názvem UFW. Pokud je ve vašem systému povolena brána firewall a chcete mít přístup k serveru Minecraft zvenčí místní sítě, musíte otevřít port 25565 :

sudo ufw allow 25565/tcp

Konfigurace záloh #

V této sekci vytvoříme záložní skript shellu a cronjob pro automatické zálohování serveru Minecraft.

Přepněte na minecraft :

sudo su - minecraft

Otevřete textový editor a vytvořte následující soubor:

nano /opt/minecraft/tools/backup.sh

Vložte následující konfiguraci:

/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

Uložte soubor a vytvořte spustitelný skript:

chmod +x /opt/minecraft/tools/backup.sh

Dále vytvořte úlohu cron, která se bude spouštět jednou za den automaticky v pevně stanovený čas.

Otevřete soubor crontab zadáním:

crontab -e

Chcete-li spouštět zálohovací skript každý den ve 23:00, vložte následující řádek:

0 23 * * * /opt/minecraft/tools/backup.sh

Přístup ke konzole Minecraft #

Pro přístup do Minecraft Console použijte mcrcon užitečnost. Musíte zadat hostitele, port rcon, heslo rcon a použít -t přepínač, který povolí mcrcon terminálový režim:

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

Při přístupu ke konzole Minecraft ze vzdáleného umístění se ujistěte, že port rcon není blokován.

Pokud se pravidelně připojujete ke konzoli Minecraft, místo psaní tohoto dlouhého příkazu vytvoříte bash alias.


Ubuntu
  1. Jak vytvořit server Minecraft s Hostinger, Ubuntu, Windows a macOS

  2. Jak nainstalovat Minecraft Server na Ubuntu 18.04 LTS

  3. Jak nainstalovat Minecraft Server na Ubuntu 20.04 LTS

  1. Nastavení serveru Ubuntu 20.04 Minecraft

  2. Nastavení serveru Ubuntu 22.04 Minecraft

  3. Jak nainstalovat Minecraft Server na Ubuntu 18.04

  1. Jak nainstalovat Spigot Minecraft Server na Ubuntu 20.04

  2. Jak nastavit Minecraft Multiplayer Server na Ubuntu 16.04

  3. Jak nainstalovat Make na Ubuntu 20.04