GNU/Linux >> Linux Esercitazione >  >> Cent OS

Come installare il server Minecraft su CentOS 7

Minecraft è uno dei giochi più popolari di tutti i tempi. È un videogioco sandbox sul posizionamento di blocchi e l'avventura.

In questo tutorial, analizzeremo i passaggi necessari per installare e configurare Minecraft Server su CentOS 7. Utilizzeremo Systemd per eseguire il server Minecraft e mcrcon utilità per la connessione all'istanza in esecuzione. Ti mostreremo anche come pianificare backup automatici del server utilizzando un processo Cron.

Prerequisiti #

L'utente con cui hai effettuato l'accesso deve disporre dei privilegi sudo per poter installare i pacchetti.

Installa i pacchetti richiesti per compilare mcrcon strumento:

sudo yum install gitsudo yum group install "Development Tools"

Installazione di Java Runtime Environment #

Minecraft richiede Java 8 o versioni successive. Poiché Minecraft Server non ha bisogno di un'interfaccia utente grafica, installeremo la versione senza testa di openjdk. Questa versione è più adatta per le applicazioni server poiché ha meno dipendenze e utilizza meno risorse di sistema.

L'installazione di Java è piuttosto semplice, basta eseguire:

sudo yum install java-1.8.0-openjdk-headless

Verifica l'installazione stampando la versione 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)

Creazione utente Minecraft #

L'esecuzione di servizi come Minecraft sotto l'utente root non è consigliata per motivi di sicurezza.

Creeremo un nuovo utente di sistema e un gruppo minecraft con la directory home /opt/minecraft che eseguirà il server Minecraft:

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

Non imposteremo una password per questo utente. Questa è una buona pratica di sicurezza perché questo utente non sarà in grado di accedere tramite SSH. Per passare a minecraft utente dovrai accedere al server come root o utente con privilegi sudo.

Installazione di Minecraft su CentOS #

Prima di iniziare con il processo di installazione, assicurati di passare all'utenteminecraft :

sudo su - minecraft

Crea tre nuove directory all'interno della directory home dell'utente usando il seguente comando:

mkdir -p ~/{backups,tools,server}
  • I backups directory memorizzerà il backup del server. Successivamente puoi sincronizzare questa directory sul tuo server di backup remoto.
  • Gli tools la directory memorizzerà il mcrcon client e lo script di backup.
  • Il server la directory conterrà il server Minecraft effettivo e i suoi dati.

Download e compilazione di mcrcon #

RCON è un protocollo che permette di connettersi ai server Minecraft ed eseguire comandi. client mcronis RCON integrato in C.

Scaricheremo il codice sorgente da GitHub e costruiremo il mcrcon binario.

Inizia spostandoti su ~/tools directory e clonare il Tiiffi/mcrcon repository da GitHub utilizzando il seguente comando:

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

Una volta clonato il repository, vai alla sua directory:

cd ~/tools/mcrcon

Costruisci il mcrcon utility utilizzando il compilatore GCC:

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

Al termine, provalo digitando:

./mcrcon -h

L'output sarà simile a questo:

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/

Download del server Minecraft #

Esistono diverse mod del server Minecraft come Craftbukkitor Spigot che ti consentono di aggiungere funzionalità (plugin) sul tuo server e personalizzare ulteriormente e modificare le impostazioni del server. In questo tutorial, installeremo l'ultimo server Minecraft vaniglia ufficiale di Mojang.

L'ultimo file di archivio Java (JAR) del server Minecraft è disponibile per il download dalla pagina di download di Minecraft.

Al momento della scrittura, l'ultima versione è 1.14.1 . Prima di continuare con il passaggio successivo dovresti controllare la pagina di download per una nuova versione.

Esegui il seguente wget comando per scaricare il file jar di Minecraft nel ~/server directory:

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

Configurazione del server Minecraft #

Vai al ~/server directory e avvia il server Minecraft:

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

Quando avvii il server per la prima volta, esegue alcune operazioni e crea il server.properties e eula.txt file e fermate.

[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.

Dovrai accettare l'EULA di Minecraft per eseguire il server. Apri il eula.txt file e cambia eula=false a 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

Chiudi e salva il file.

Quindi, apri server.properties file, abilitare il protocollo rcon e impostare la password rcon:

nano ~/server/server.properties

Individua le seguenti righe e aggiorna i loro valori come mostrato di seguito:

~/server/server.properties
rcon.port=25575
rcon.password=strong-password
enable-rcon=true
Non dimenticare di modificare la strong-password a qualcosa di più sicuro. Se non vuoi connetterti al server Minecraft da postazioni remote, assicurati che la porta rcon sia bloccata dal tuo firewall.

Mentre sei qui, puoi anche regolare le proprietà predefinite del server. Per ulteriori informazioni sulle possibili impostazioni, visitare la pagina server.properties.

Creazione del file Systemd Unit #

Per eseguire Minecraft come servizio creeremo un nuovo file di unità Systemd.

Torna al tuo utente sudo digitando exit .

Apri il tuo editor di testo e crea un file chiamato minecraft.service nel /etc/systemd/system/ :

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

Incolla la seguente configurazione:

/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

Modifica il Xmx e Xms flag in base alle risorse del tuo server. Il Xmx flag definisce il pool di allocazione di memoria massimo per una JVM (Java virtual machine), mentre Xms definisce il pool di allocazione della memoria iniziale. Inoltre, assicurati di utilizzare il rcon corretto porta e password.

Salva e chiudi il file e notifica a systemd che abbiamo creato un nuovo file unit:

sudo systemctl daemon-reload

Ora puoi avviare il server Minecraft eseguendo:

sudo systemctl start minecraft

La prima volta che avvii il servizio, verranno generati diversi file e directory di configurazione, incluso il mondo Minecraft.

Verifica lo stato del servizio con il seguente comando:

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

Abilita l'avvio automatico del servizio Minecraft all'avvio:

sudo systemctl enable minecraft

Regolazione del firewall #

Se il tuo server è protetto da un firewall per accedere al server Minecraft dall'esterno della tua rete locale devi aprire la porta 25565 :

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

Configurazione dei backup #

In questa sezione creeremo uno script di backup e cronjob per eseguire automaticamente il backup del server Minecraft.

Inizia passando a minecraft utente:

sudo su - minecraft

Apri il tuo editor di testo e crea il seguente file:

nano /opt/minecraft/tools/backup.sh

Incolla la seguente configurazione:

/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

Rendi eseguibile lo script emettendo il seguente chmod comando:

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

Apri il file crontab e crea un cronjob che verrà eseguito automaticamente una volta al giorno a un'ora prestabilita:

crontab -e

Eseguiremo lo script di backup ogni giorno alle 23:00:

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

Accesso alla console Minecraft #

Per accedere alla Console di Minecraft puoi utilizzare il mcrcon utilità.

La sintassi è la seguente, è necessario specificare l'host, la porta rcon, la password rcon e utilizzare il -t interruttore che abilita il mcrcon modalità terminale:

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

Se ti connetti regolarmente alla console Minecraft, invece di digitare questo lungo comando dovresti creare un alias bash.


Cent OS
  1. Come installare Nginx su CentOS 8

  2. Come installare PostgreSQL su CentOS 8

  3. Come installare MariaDB su CentOS 8

  4. Come installare Teamspeak 3 Server su CentOS 8

  5. Come installare ProFTPD su CentOS 7

Come installare VestaCP su CentOS 6

Come installare il server VNC su CentOS 7

Come installare il server Minecraft su CentOS 6

Come installare il server VNC su CentOS 6

Come installare il server DHCP su CentOS 7

Come installare Nginx su CentOS 6