Android

Hoe minecraft-server op Centos 7 te installeren

How to Install a Minecraft Server on CentOS 7.6

How to Install a Minecraft Server on CentOS 7.6

Inhoudsopgave:

Anonim

Minecraft is een van de populairste spellen aller tijden. Het is een sandbox-videogame over het plaatsen van blokken en avonturen beleven.

In deze zelfstudie doorlopen we de stappen die nodig zijn om Minecraft Server op CentOS 7 te installeren en configureren. We zullen Systemd gebruiken om de Minecraft-server en het hulpprogramma mcrcon om verbinding te maken met de actieve instantie. We laten u ook zien hoe u geautomatiseerde serverback-ups kunt plannen met een Cron-taak.

voorwaarden

De gebruiker waarbij u bent aangemeld, moet sudo-rechten hebben om pakketten te kunnen installeren.

Installeer de pakketten die nodig zijn om de mcrcon tool te bouwen:

sudo yum install git sudo yum group install "Development Tools"

Java Runtime Environment installeren

Minecraft vereist Java 8 of hoger. Omdat de Minecraft Server geen grafische gebruikersinterface nodig heeft, zullen we de headless-versie van de openjdk installeren. Deze versie is meer geschikt voor servertoepassingen omdat deze minder afhankelijkheden heeft en minder systeembronnen gebruikt.

De installatie van Java is vrij eenvoudig, voer gewoon uit:

sudo yum install java-1.8.0-openjdk-headless

Controleer de installatie door de Java-versie af te drukken:

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)

Minecraft-gebruiker maken

Het uitvoeren van services als Minecraft onder de rootgebruiker wordt om veiligheidsredenen afgeraden.

We zullen een nieuwe systeemgebruiker en groep minecraft met homedirectory /opt/minecraft die de Minecraft-server uitvoert:

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

We gaan geen wachtwoord instellen voor deze gebruiker. Dit is een goede beveiligingspraktijk omdat deze gebruiker niet kan inloggen via SSH. Om over te schakelen naar de minecraft gebruiker moet u als root of gebruiker met sudo-rechten bij de server zijn aangemeld.

Minecraft installeren op CentOS

Voordat u begint met het installatieproces, moet u overschakelen naar minecraft gebruiker:

sudo su - minecraft

Maak drie nieuwe mappen in de thuismap van de gebruiker met de volgende opdracht:

mkdir -p ~/{backups, tools, server}

  • In de backups upmap wordt uw serverback-up opgeslagen. U kunt deze map later synchroniseren met uw externe back-upserver. In de map met tools 's worden de mcrcon client en het back-upscript opgeslagen. De server bevat de werkelijke Minecraft-server en de bijbehorende gegevens.

Mcrcon downloaden en compileren

RCON is een protocol waarmee u verbinding kunt maken met de Minecraft-servers en opdrachten kunt uitvoeren. mcron is RCON client gebouwd in C.

We zullen de broncode downloaden van GitHub en het binaire mcrcon bouwen.

Begin met het verplaatsen naar de map ~/tools en kloon de Tiiffi/mcrcon repository van GitHub met behulp van de volgende opdracht:

cd ~/tools && git clone

Nadat de repository is gekloond, navigeert u naar de map:

cd ~/tools/mcrcon

Bouw het hulpprogramma mcrcon met de GCC-compiler:

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

Als u klaar bent, test u het door te typen:

./mcrcon -h

De uitvoer ziet er ongeveer zo uit:

Usage: mcrcon…… 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

Minecraft Server downloaden

Er zijn verschillende Minecraft-servermods zoals Craftbukkit of Spigot waarmee u functies (plug-ins) aan uw server kunt toevoegen en de serverinstellingen verder kunt aanpassen en aanpassen. In deze tutorial zullen we de nieuwste Mojang's officiële vanille Minecraft-server installeren.

Het Java-archiefbestand (JAR) van de nieuwste Minecraft-server kan worden gedownload van de Minecraft-downloadpagina.

Op het moment van schrijven is de nieuwste versie 1.14.1 . Voordat u doorgaat met de volgende stap, moet u de downloadpagina controleren op een nieuwe versie.

Voer de volgende wget opdracht uit om het Minecraft jar-bestand te downloaden in de map ~/server :

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

Minecraft Server configureren

Navigeer naar de map ~/server en start de Minecraft-server:

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

Wanneer u de server voor de eerste keer start, voert deze enkele bewerkingen uit en worden de bestanden server.properties en eula.txt en stopt deze.

: Failed to load properties from file: server.properties: Failed to load eula.txt: You need to agree to the EULA in order to run the server. Go to eula.txt for more info.

U moet akkoord gaan met de Minecraft EULA om de server te kunnen gebruiken. Open het bestand eula.txt en wijzig eula=false in 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

Sluit het bestand en sla het op.

Open vervolgens het bestand server.properties , schakel het rcon-protocol in en stel het rcon-wachtwoord in:

nano ~/server/server.properties

Zoek de volgende regels en werk hun waarden bij zoals hieronder weergegeven:

~ / Server / server.properties

rcon.port=25575 rcon.password=strong-password enable-rcon=true Vergeet niet om het strong-password te strong-password in iets veiligers. Als u geen verbinding wilt maken met de Minecraft-server vanaf externe locaties, zorg er dan voor dat de rcon-poort wordt geblokkeerd door uw firewall.

Terwijl u hier bent, kunt u ook de standaardeigenschappen van de server aanpassen. Ga naar de pagina server.properties voor meer informatie over de mogelijke instellingen.

Systemd Unit-bestand maken

Om Minecraft als een service uit te voeren, maken we een nieuw Systemd-eenheidsbestand.

Schakel terug naar uw sudo-gebruiker door exit typen.

Open uw teksteditor en maak een bestand met de naam minecraft.service in de /etc/systemd/system/ :

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

Plak de volgende configuratie:

/etc/systemd/system/minecraft.service

Description=Minecraft Server After=network.target 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 WantedBy=multi-user.target

Pas de Xmx en Xms vlaggen aan op basis van uw serverbronnen. De Xmx vlag definieert de maximale geheugentoewijzingspool voor een Java virtuele machine (JVM), terwijl Xms de initiële geheugentoewijzingspool definieert. Zorg er ook voor dat u de juiste rcon poort en het juiste wachtwoord gebruikt.

Sla het bestand op en sluit het en meld systeem dat we een nieuw eenheidsbestand hebben gemaakt:

sudo systemctl daemon-reload

Nu kunt u de Minecraft-server starten door het volgende uit te voeren:

sudo systemctl start minecraft

De eerste keer dat u de service start, genereert deze verschillende configuratiebestanden en mappen, waaronder de Minecraft-wereld.

Controleer de servicestatus met de volgende opdracht:

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

Schakel de Minecraft-service in om automatisch te worden gestart tijdens het opstarten:

sudo systemctl enable minecraft

Firewall aanpassen

Als uw server wordt beschermd door een firewall voor toegang tot Minecraft-server van buiten uw lokale netwerk, moet u poort 25565 :

sudo firewall-cmd --permanent --zone=public --add-port=25565/tcp sudo firewall-cmd --reload

Back-ups configureren

In dit gedeelte maken we een back-upscript en cronjob om automatisch een back-up van de Minecraft-server te maken.

Begin door over te schakelen naar minecraft gebruiker:

sudo su - minecraft

Open uw teksteditor en maak het volgende bestand:

nano /opt/minecraft/tools/backup.sh

Plak de volgende configuratie:

/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_%R).tar.gz /opt/minecraft/server rcon "save-on" ## Delete older backups find /opt/minecraft/backups/ -type f -mtime +7 -name '*.gz' -delete

Maak het script uitvoerbaar door de volgende chmod opdracht uit te geven:

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

Open het crontab-bestand en maak een cronjob die eenmaal per dag automatisch op een vast tijdstip wordt uitgevoerd:

crontab -e

We voeren het back-upscript elke dag om 23:00 uur uit:

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

Toegang tot Minecraft Console

Om toegang te krijgen tot de Minecraft Console kunt u het hulpprogramma mcrcon .

De syntaxis is als volgt, u moet de host, rcon-poort, rcon-wachtwoord opgeven en de -t schakelaar gebruiken die de mcrcon terminalmodus inschakelt:

/opt/minecraft/tools/mcrcon/mcrcon -H 127.0.0.1 -P 25575 -p strong-password -t

Logged in. Type "Q" to quit! >

Conclusie

U hebt Minecraft-server op uw CentOS 7-systeem geïnstalleerd en een dagelijkse back-up opgezet.

java minecraft centos