Minecraft ir viena no populārākajām spēlēm pasaulē, un sava servera izveide ļauj jums un draugiem spēlēt kopā ar pilnu kontroli pār iestatījumiem, modiem un spēles pieredzi. Šajā pamācībā apskatīsim, kā uzstādīt un konfigurēt Minecraft Java Edition serveri uz Linux servera — no priekšnosacījumiem līdz pilnībā darbojošamies serverim.

1. Priekšnosacījumi

Pirms sākat, jums ir nepieciešams:

  • Linux serveris — Ubuntu, Debia vai cita modera Linux distribūcija
  • Piekļuve terminālim — SSH savienojums ar serveri
  • Vismaz 2 GB RAM — ieteicams 4 GB+ lielākam spēlētāju skaitam
  • Java 21 — Minecraft 1.20.5+ vēlāk prasa Java 21
  • Atvērts ports 25565 — Minecraft noklusējuma ports

Ieteicamie servera resursi

Spēlētāju skaits RAM CPU kodoli Disku vieta
1–5 2 GB 2 10 GB
5–15 4 GB 2–4 15 GB
15–30 6–8 GB 4 20 GB
30+ 10+ GB 4+ 30+ GB

2. Sistēmas sagatavošana

Atjauniniet sistēmu

sudo apt update && sudo apt upgrade -y

Instalējiet Java 21

Minecraft 1.20.5 un jaunākām versijām nepieciešama Java 21:

sudo apt install openjdk-21-jre-headless -y

Pārbaudiet instalāciju:

java -version

Rezultātam jābūt līdzīgam:

openjdk version "21.0.x" 2024-xx-xx

Instalējiet papildu rīkus

sudo apt install screen wget -y

  • screen — ļauj palaist serveri fonā un atvienot sesiju
  • wget — failu lejupielādes rīks

3. Minecraft lietotāja izveide

Drošības apsvērumu dēļ ir ieteicams Minecraft serveri palaist ar atsevišķu lietotāju, nevis root:

sudo useradd -m -r -d /opt/minecraft minecraft

Šī komanda:

  • -m — izveido mājas direktoriju
  • -r — izveido sistēmas lietotāju
  • -d /opt/minecraft — nosaka mājas direktoriju

4. Servera lejupielāde un pirmā palaišana

Izveidojiet servera direktoriju

sudo mkdir -p /opt/minecraft/server
cd /opt/minecraft/server

Lejupielādējiet servera failu

Lejupielādējiet jaunāko Minecraft servera versiju no oficiālās Minecraft lapas:

sudo wget https://piston-data.mojang.com/v1/objects/XXXXX/server.jar

Aizstājiet URL ar aktuālo saiti no Minecraft lejupielādes lapas.

Pieņemiet EULA

Pirmajā palaišanas mēģinājumā serveris izveidos konfigurācijas failus un apstāsies, pieprasot EULA piekrišanu:

sudo java -Xmx1024M -Xms512M -jar server.jar nogui

Pieņemiet licenci, rediģējot eula.txt:

sudo nano eula.txt

Mainiet rindu:

eula=false

uz:

eula=true

Iestatiet failu īpašnieku

sudo chown -R minecraft:minecraft /opt/minecraft

5. Palaišanas skripta izveide

Izveidojiet palaišanas skriptu ar optimāliem Java parametriem:

sudo nano /opt/minecraft/server/start.sh

Ievadiet šādu saturu (pielāgojiet RAM vērtības savām vajadzībām):

#!/bin/bash
cd /opt/minecraft/server
java -Xmx4G -Xms2G \
-XX:+UseG1GC \
-XX:+ParallelRefProcEnabled \
-XX:MaxGCPauseMillis=200 \
-XX:+UnlockExperimentalVMOptions \
-XX:+DisableExplicitGC \
-XX:G1NewSizePercent=30 \
-XX:G1MaxNewSizePercent=40 \
-XX:G1HeapRegionSize=8M \
-XX:G1ReservePercent=20 \
-XX:G1MixedGCCountTarget=4 \
-jar server.jar nogui

Parametru skaidrojums:

  • -Xmx4G — maksimālais RAM apjoms (šajā piemērā 4 GB)
  • -Xms2G — sākotnēji piešķirtais RAM (2 GB)
  • -XX:+UseG1GC — izmanto G1 atkritumu savācēju, kas ir optimāls Minecraft serveriem
  • nogui — palaiž serveri bez grafiskās saskarnes

Padariet skriptu izpildāmu:

sudo chmod +x /opt/minecraft/server/start.sh

6. server.properties konfigurēšana

Galvenais konfigurācijas fails ir server.properties. Rediģējiet to:

sudo nano /opt/minecraft/server/server.properties

Svarīgākie iestatījumi

Parametrs Noklusējums Apraksts
server-port 25565 Servera ports
gamemode survival Spēles režīms: survival, creative, adventure, spectator
difficulty easy Grūtības pakāpe: peaceful, easy, normal, hard
max-players 20 Maksimālais spēlētāju skaits
motd A Minecraft Server Servera apraksts serverī sarakstā
online-mode true Pārbauda spēlētāju autentiskumu caur Mojang
white-list false Ieslēdz balto sarakstu — tikai atļautie spēlētāji var pievienoties
pvp true Ļauj spēlētājiem cīnīties savā starpā
spawn-protection 16 Aizsargāto bloku rādiuss ap spawn punktu
view-distance 10 Redzamības attālums (chunks). Samaziniet, ja serverim trūkst resursu
simulation-distance 10 Simulācijas attālums — cik tālu no spēlētāja tiek apstrādāta spēles loģika
level-seed (tukšs) Pasaules ģenerēšanas sēkla
level-name world Pasaules mapes nosaukums
enable-command-block false Ieslēdz komandu blokus

Piemēra konfigurācija

server-port=25565
gamemode=survival
difficulty=normal
max-players=10
motd=Mans Minecraft Serveris
online-mode=true
white-list=true
pvp=true
view-distance=8
simulation-distance=6
spawn-protection=16
enable-command-block=true

7. Servera palaišana ar screen

Izmantojiet screen, lai serveris darbotos fonā arī pēc SSH sesijas aizvēršanas:

Servera palaišana

sudo -u minecraft screen -S minecraft /opt/minecraft/server/start.sh

Atvienošanās no sesijas

Nospiediet Ctrl+A, tad D — serveris turpinās darboties fonā.

Atgriešanās sesijā

sudo -u minecraft screen -r minecraft

Servera apstādināšana

Atgriezieties screen sesijā un ievadiet:

stop

8. Systemd servisa izveide

Lai serveris automātiski startētu pēc sistēmas pārstartēšanas, izveidojiet systemd servisu:

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

Ievadiet šādu saturu:

[Unit]
Description=Minecraft Server
After=network.target

[Service]
User=minecraft
WorkingDirectory=/opt/minecraft/server
ExecStart=/opt/minecraft/server/start.sh
ExecStop=/bin/kill -SIGINT $MAINPID
Restart=on-failure
RestartSec=10

[Install]
WantedBy=multi-user.target

Ieslēdziet un palaidiet servisu:

sudo systemctl daemon-reload
sudo systemctl enable minecraft
sudo systemctl start minecraft

Noderīgas komandas:

Komanda Apraksts
sudo systemctl start minecraft Palaist serveri
sudo systemctl stop minecraft Apstādināt serveri
sudo systemctl restart minecraft Pārstartēt serveri
sudo systemctl status minecraft Pārbaudīt servera statusu
sudo journalctl -u minecraft -f Skatīt servera logus reāllaikā

9. Ugunsmūra konfigurēšana

Atveriet Minecraft portu ugunsmūrī:

UFW (Ubuntu)

sudo ufw allow 25565/tcp
sudo ufw reload

iptables

sudo iptables -A INPUT -p tcp --dport 25565 -j ACCEPT
sudo iptables-save | sudo tee /etc/iptables/rules.v4

Ja serveris atrodas mākonī (AWS, DigitalOcean, Hetzner u.c.), neaizmirstiet atvērt portu arī mākoņa ugunsmūra (Security Group) iestatījumos.

10. Baltā saraksta un operatoru pārvaldība

Baltais saraksts (whitelist)

Ja ieslēgts white-list=true, pievienojiet spēlētājus ar servera konsoles komandām:

whitelist add SpeletajaVards
whitelist remove SpeletajaVards
whitelist list

Operatora tiesības

Piešķiriet administratora tiesības:

op SpeletajaVards
deop SpeletajaVards

Operatora līmeņus var konfigurēt failā ops.json:

Līmenis Apraksts
1 Var apiet spawn aizsardzību
2 Var izmantot vairumu komandu
3 Var pārvaldīt spēlētājus (kick, ban)
4 Pilna piekļuve visām komandām (tostarp /stop)

11. Automātiskā dublēšana (backup)

Regulāras dublējumkopijas ir ļoti svarīgas. Izveidojiet dublēšanas skriptu:

sudo nano /opt/minecraft/backup.sh

Ievadiet šādu saturu:

#!/bin/bash
BACKUP_DIR="/opt/minecraft/backups"
SERVER_DIR="/opt/minecraft/server"
DATE=$(date +%Y-%m-%d_%H-%M)

# Izveidot backup direktoriju
mkdir -p $BACKUP_DIR

# Paziņot serverim par backup sākumu
screen -S minecraft -p 0 -X stuff "say Tiek veidota dublējumkopija...$(printf '\r')"
screen -S minecraft -p 0 -X stuff "save-all$(printf '\r')"
screen -S minecraft -p 0 -X stuff "save-off$(printf '\r')"

sleep 5

# Izveidot arhīvu
tar -czf $BACKUP_DIR/minecraft-$DATE.tar.gz -C $SERVER_DIR world world_nether world_the_end

# Ieslēgt saglabāšanu atpakaļ
screen -S minecraft -p 0 -X stuff "save-on$(printf '\r')"
screen -S minecraft -p 0 -X stuff "say Dublējumkopija izveidota!$(printf '\r')"

# Dzēst vecākas par 7 dienām
find $BACKUP_DIR -name "minecraft-*.tar.gz" -mtime +7 -delete

echo "Backup pabeigts: minecraft-$DATE.tar.gz"

Padariet izpildāmu un pievienojiet cron uzdevumu:

sudo chmod +x /opt/minecraft/backup.sh
sudo crontab -e

Pievienojiet rindu automātiskai dublēšanai katru dienu plkst. 4:00:

0 4 * * * /opt/minecraft/backup.sh >> /opt/minecraft/backup.log 2>&1

12. Veiktspējas optimizācija

Ja serveris palēninās ar vairākiem spēlētājiem, izmēģiniet šos uzlabojumus:

server.properties optimizācija

  • Samaziniet view-distance līdz 6–8 (noklusējums: 10)
  • Samaziniet simulation-distance līdz 4–6
  • Iestatiet network-compression-threshold=256

Alternatīvi serveru dzinēji

Vaniljas Minecraft serveris nav optimālākais variants. Apsveriet šādas alternatīvas:

Dzinējs Apraksts
Paper Populārākais optimizētais serveris. Atbalsta Bukkit/Spigot spraudņus. Ieteicams vairumam serveru
Purpur Balstīts uz Paper ar papildu konfigurācijas iespējām
Fabric Viegls, moderns modu dzinējs — labākais modētiem serveriem
Forge Klasiskais modu dzinējs ar plašu modu bibliotēku

Lai pārietu uz Paper, vienkārši lejupielādējiet Paper .jar failu un aizstājiet server.jar ar to.

13. Drošības padomi

  • Nekad nepalaidiet serveri kā root — izmantojiet atsevišķu minecraft lietotāju
  • Turiet online-mode=true — tas pārbauda spēlētāju identitāti caur Mojang serveriem
  • Izmantojiet balto sarakstuwhite-list=true neļauj nepazīstamiem pievienoties
  • Regulāri atjauniniet serveri — jaunākās versijas ietver drošības labojumus
  • Ierobežojiet RCON — ja ieslēdzat attālināto konsoli (enable-rcon=true), izmantojiet stipru paroli un ierobežojiet piekļuvi
  • Veidojiet regulāras dublējumkopijas — aizsargā no datu zaudēšanas un griefing
  • Uzraugiet servera logus — pārbaudiet logs/latest.log aizdomīgai aktivitātei

14. Noderīgas servera komandas

Komanda Apraksts
/stop Apstādina serveri
/save-all Saglabā visas pasaules
/list Parāda pieslēgto spēlētāju sarakstu
/kick [spēlētājs] Izmet spēlētāju no servera
/ban [spēlētājs] Bloķē spēlētāju
/pardon [spēlētājs] Atbloķē spēlētāju
/gamemode [režīms] [spēlētājs] Maina spēles režīmu
/tp [spēlētājs] [x] [y] [z] Teleportē spēlētāju
/give [spēlētājs] [priekšmets] [daudzums] Iedod priekšmetu spēlētājam
/time set [day/night] Maina diennakts laiku
/weather [clear/rain/thunder] Maina laikapstākļus
/difficulty [līmenis] Maina grūtības pakāpi

Kopsavilkums

Minecraft servera uzstādīšana uz Linux sastāv no šādiem galvenajiem soļiem:

  1. Instalējiet Java 21 un sagatavojiet sistēmu
  2. Izveidojiet atsevišķu lietotāju drošībai
  3. Lejupielādējiet servera failu un pieņemiet EULA
  4. Konfigurējiet server.properties pēc savām vajadzībām
  5. Izveidojiet systemd servisu automātiskai palaišanai
  6. Atveriet portu ugunsmūrī
  7. Iestatiet dublēšanu ar cron

Ja vēlaties labāku veiktspēju, apsveriet Paper servera dzinēju — tas ir būtiski ātrāks par vaniljas serveri un atbalsta tūkstošiem spraudņu.

Noderīgas saites:

Laboja mad, labots 2x