Ricerca nel sito web

Come installare Spigot Minecraft Server su Ubuntu 20.04


Su questa pagina

  1. Prerequisiti
  2. Passaggio 1: configurazione del firewall
  3. Passaggio 2 - Installa Java e Git
  4. Passaggio 3: crea un utente Minecraft
  5. Passaggio 4 - Scarica e installa Spigot
  6. Passaggio 5 - Avvia Spigot Server
  7. Passaggio 6 - Configura Spigot come servizio
  8. Passaggio 7: connettiti a Minecraft
  9. Passaggio 8 - Personalizza le proprietà del server
  10. Passaggio 9 - Installa i plug-in
  11. Passaggio 10 - Aggiorna Spigot
  12. Conclusione

Spigot è un software server Minecraft modificato basato su CraftBukkit. Fornisce ulteriori ottimizzazioni delle prestazioni, opzioni di configurazione e funzionalità mantenendo la compatibilità con tutti i plug-in e le mod esistenti.

In questo tutorial imparerai come costruire e installare Spigot Server su un server basato su Ubuntu 20.04 e installare i plugin.

Prerequisiti

  • A server running Ubuntu 20.04 with a minimum of 4GB RAM and 2 CPU Cores.

  • A non-root user with sudo privileges.

  • Everything is updated.

    $ sudo apt update && sudo apt upgrade
    
  • Install the required packages.

    $ sudo apt install wget apt-transport-https gnupg nano screen
    

Passaggio 1: configurare il firewall

Il primo passo è configurare il firewall. Ubuntu viene fornito con ufw (Uncomplicated Firewall) per impostazione predefinita.

Controlla se il firewall è in esecuzione.

$ sudo ufw status

Dovresti ottenere il seguente output.

Status: inactive

Consenti porta SSH per impedire al firewall di interrompere la connessione corrente attivandola.

$ sudo ufw allow OpenSSH

Consentire alla porta 25565 affinché il server Spigot accetti le connessioni.

$ sudo ufw allow 25565

Abilita il firewall

$ sudo ufw enable
Command may disrupt existing ssh connections. Proceed with operation (y|n)? y
Firewall is active and enabled on system startup

Controlla di nuovo lo stato del firewall.

$ sudo ufw status

Dovresti vedere un output simile.

Status: active

To                         Action      From
--                         ------      ----
OpenSSH                    ALLOW       Anywhere
25565                      ALLOW       Anywhere
OpenSSH (v6)               ALLOW       Anywhere (v6)
25565 (v6)                 ALLOW       Anywhere (v6)

Passaggio 2: installa Java e Git

Il programma di installazione di Spigot ha bisogno di Java e Git per funzionare. Ubuntu 20.04 viene fornito con OpenJDK 17 come ultima versione disponibile di Java. Eseguire il seguente comando per installarlo.

$ sudo apt install openjdk-17-jre-headless

Conferma il rilascio.

$ java --version
openjdk 17.0.1 2021-10-19
OpenJDK Runtime Environment (build 17.0.1+12-Ubuntu-120.04)
OpenJDK 64-Bit Server VM (build 17.0.1+12-Ubuntu-120.04, mixed mode, sharing)

Installa Git.

$ sudo apt install git

Passaggio 3: crea un utente Minecraft

Il passaggio successivo consiste nel creare un utente dedicato per l'esecuzione del server.

$ sudo adduser minecraft

Passa all'utente appena creato.

$ sudo su - minecraft

Passo 4 - Scarica e installa Spigot

Costruiremo Spigot utilizzando l'applicazione BuildTools.jar. Il primo passo è passare alla home directory.

minecraft:$ cd ~

Crea una nuova directory per BuildTools e spostati su di essa.

minecraft:$ mkdir buildtools && cd buildtools

Prendi il file BuildTools.jar.

minecraft:$ wget -O BuildTools.jar  https://hub.spigotmc.org/jenkins/job/BuildTools/lastSuccessfulBuild/artifact/target/BuildTools.jar

Costruisci l'ultima versione stabile di Spigot.

minecraft:$ java -jar BuildTools.jar --rev latest

A seconda delle risorse del server disponibili, il completamento di questo processo potrebbe richiedere del tempo.

Controlla il nome del file jar Spigot creato.

minecraft:$ ls 
apache-maven-3.6.0  BuildData  BuildTools.jar  BuildTools.log.txt  Bukkit  CraftBukkit  Spigot  spigot-1.18.1.jar  work

Nel nostro caso, il nome è.

Crea un'altra directory per il tuo Spigot Server e passa ad essa.

minecraft:$ cd ~ && mkdir server && cd server

Sposta il tuo file jar Spigot nella directory del server appena creata.

minecraft:$ mv ~/buildtools/spigot-1.18.1.jar ~/server/spigot.jar

Passaggio 5: avviare Spigot Server

Per avviare il server Spigot, dobbiamo creare uno script di avvio che ci permetta di passare vari parametri Java per ottimizzare il server.

Crea e apri lo script di avvio per Spigot.

minecraft:$ sudo nano spigotstart.sh

Incollare il seguente codice nel file.

#!/bin/sh

java -Xms3G -Xmx3G -XX:+UseG1GC -XX:+ParallelRefProcEnabled -XX:MaxGCPauseMillis=200 -XX:+UnlockExperimentalVMOptions -XX:+DisableExplicitGC -XX:+AlwaysPreTouch -XX:G1NewSizePercent=30 -XX:G1MaxNewSizePercent=40 -XX:G1HeapRegionSize=8M -XX:G1ReservePercent=20 -XX:G1HeapWastePercent=5 -XX:G1MixedGCCountTarget=4 -XX:InitiatingHeapOccupancyPercent=15 -XX:G1MixedGCLiveThresholdPercent=90 -XX:G1RSetUpdatingPauseTimePercent=5 -XX:SurvivorRatio=32 -XX:+PerfDisableSharedMem -XX:MaxTenuringThreshold=1 -Dusing.aikars.flags=https://mcflags.emc.gs -Daikars.new.flags=true -jar spigot.jar nogui

Il parametro -Xms3G -Xmx3G ha configurato l'heapspace Java per 4 GB di RAM. Abbiamo lasciato 1 GB libero nel nostro caso per il sistema operativo e qualsiasi altra cosa per cui ha bisogno della RAM. Cambia questo nella quantità di RAM che vuoi allocare al server Spigot. Se il tuo server ha 16 GB di RAM, dovresti impostare il parametro per occupare 14 o 15 GB di RAM.

Una volta terminato, salva il file premendo Ctrl + X e inserendo Y quando richiesto.

Rendi eseguibile lo script di avvio.

minecraft:$ chmod +x spigotstart.sh

Avvia il tuo server Spigot per la prima volta.

minecraft:$ ./spigotstart.sh

Il server non si avvierà e invece terminerà, dando il seguente messaggio.

[14:14:21] [ServerMain/INFO]: You need to agree to the EULA in order to run the server. Go to eula.txt for more info.

Apri eula.txt per la modifica.

minecraft:$ nano eula.txt

Imposta il valore della variabile eula su true.

#By changing the setting below to TRUE you are indicating your agreement to our EULA (https://account.mojang.com/documents/minecraft_eula).
#Sun Dec 26 13:29:15 UTC 2021
eula=true

Una volta terminato, salva il file premendo Ctrl + X e inserendo Y quando richiesto.

Prima di avviare il server, configuriamolo per eseguirlo come servizio in background.

Passaggio 6: configurare Spigot come servizio

Il server ha bisogno che la shell sia sempre in esecuzione affinché funzioni, il che non è l'ideale. Dobbiamo creare un servizio in modo che il server possa avviarsi automaticamente all'avvio ed essere eseguito in background.

Esci dall'utente minecraft.

minecraft:$ exit

Crea un file Spigot Service e aprilo per la modifica.

$ sudo nano /etc/systemd/system/spigot.service

Incolla il seguente codice.

[Unit]
Description=SpigotMC
After=network.target

[Service]
Type=forking
User=minecraft
Group=minecraft
ExecStart=/usr/bin/screen -d -m -S minecraft /home/minecraft/server/spigotstart.sh
ExecStop=/usr/bin/screen -S minecraft -p 0 -X stuff "stop$(printf \\r)"
WorkingDirectory=/home/minecraft/server

[Install]
WantedBy=multi-user.target

Una volta terminato, salva il file premendo Ctrl + X e inserendo Y quando richiesto.

Ricarica il demone del servizio.

$ sudo systemctl daemon-reload

Abilita il servizio.

$ sudo systemctl enable spigot

Avvia il servizio Spigot.

$ sudo systemctl start spigot

Controlla lo stato del servizio.

$ sudo systemctl status spigot
? spigot.service - SpigotMC
     Loaded: loaded (/etc/systemd/system/spigot.service; disabled; vendor preset: enabled)
     Active: active (running) since Mon 2021-12-27 09:15:25 UTC; 6s ago
    Process: 32011 ExecStart=/usr/bin/screen -d -m -S minecraft /home/minecraft/server/spigotstart.sh (code=exited, sta>
   Main PID: 32012 (screen)
      Tasks: 25 (limit: 4691)
     Memory: 3.2G
     CGroup: /system.slice/spigot.service
             ??32012 /usr/bin/SCREEN -d -m -S minecraft /home/minecraft/server/spigotstart.sh
             ??32013 /bin/sh /home/minecraft/server/spigotstart.sh
             ??32014 java -Xms3G -Xmx3G -XX:+UseG1GC -XX:+ParallelRefProcEnabled -XX:MaxGCPauseMillis=200 -XX:+UnlockEx>

Dec 27 09:15:25 spigot systemd[1]: Starting SpigotMC...
Dec 27 09:15:25 spigot systemd[1]: Started SpigotMC.

Passaggio 7: connettiti a Minecraft

Ora che il nostro server è attivo e funzionante, è il momento di connettersi a Minecraft. Avvia il tuo gioco Minecraft.

Fai clic sul pulsante Multigiocatore e ignora l'avviso per il futuro selezionando la casella Non mostrare più questa schermata.

Fare clic sul pulsante Aggiungi server nella pagina successiva.

Inserisci l'indirizzo IP pubblico e il nome del tuo server. Fai clic su Fine quando hai finito.

Il tuo server apparirà ora nell'elenco.

Fare clic sul nome del server e premere il pulsante Accedi al server per avviare il server. Il tuo gioco inizierà presto.

Puoi chiedere ai tuoi amici di unirsi al tuo server e giocare con loro.

Passaggio 8: personalizzare le proprietà del server

Puoi personalizzare il tuo server modificando il file /home/minecraft/server/server.properties. Esamineremo alcune delle proprietà di seguito.

  • Enable command blocks: Values available are true and false.

    enable-command-block=false
    
  • Gamemode: Values available are survival, creative, adventure, and spectator. They can also be defined by integers starting from 0 for survival, 1 for creative, 2 for adventure, and 3 for spectator.

    gamemode=survival
    
  • Difficulty: Values available are peaceful, easy, normal, and hard. They can also be defined by integers starting from 0 for peaceful, 1 for easy, 2 for normal and 3 for hard.

    difficulty=easy
    
  • MOTD: Stands for Message Of The Day. It is the message that is shown on the Server list page. Accepts a string value. Supports color, special characters and formatting codes. It should not be longer than 59 characters.

    motd=A Minecraft Server
    
  • PVP: Enables the Player versus Player mode. Values available are true and false.

    pvp=true
    
  • Server Port: Defines the port on which the Minecraft server listens to. The default value is 25565.

    server-port=25565
    

    If you change the port value to something else, you will need to enable it in the firewall; otherwise, players won't be able to connect.

  • See the Minecraft wiki for more properties.

Dovrai riavviare il tuo server Spigot dopo aver apportato modifiche a queste proprietà affinché abbiano effetto.

$ sudo systemctl restart spigot

Passaggio 9: installa i plug-in

Puoi scaricare plugin dalle pagine di Bukkit Plugin.

Se scarichi il plugin da Spigot, il seguente metodo non funzionerà poiché è stato bloccato. Dovrai scaricare manualmente il file Jar e spostarlo sul server. Ma se stai scaricando da Bukkit, usa il seguente metodo per scaricare direttamente sul tuo server.

Scarica il file .jar del plugin dalle pagine precedenti nella directory /home/minecraft/server/plugins.

$ sudo wget -P /home/minecraft/server/plugins/ --content-disposition <plugin url>

Il flag --content-disposition assicura che il file venga scaricato con il nome file corretto utilizzando le intestazioni Content-Disposition.

Ad esempio, se stai scaricando il plug-in WorldEdit, ecco come lo scaricherai.

$ sudo wget -P /home/minecraft/server/plugins --content-disposition https://dev.bukkit.org/projects/world
edit/files/latest

Per ricaricare il plugin, riavvia il tuo server Spigot.

$ sudo systemctl restart spigot

Passaggio 10: aggiorna Spigot

L'aggiornamento di Spigot richiederà di ripetere il passaggio 4 di questa guida per acquisire l'ultima versione del file BuildTools.jar e quindi creare un nuovo spigot.jar file. Assicurati di eseguire il backup dei vecchi file jar e di arrestare il server prima di farlo.

Conclusione

Questo conclude il nostro tutorial sull'installazione e la configurazione del server Spigot Minecraft su un sistema basato su Ubuntu 20.04. Se hai domande, pubblicale nei commenti qui sotto.