−25%

Windows 按年付费,截至 10 月 31 日。 查看套餐

EQVPS

在 VPS 上搭建一台 Minecraft 服务器

2026年7月27日 · 2 分钟阅读 · EQVPS Team

这是我们面向游戏服务器的 VPS 页面的动手搭档。那一页讲的是哪个套餐合适;这一页讲的是真正把服务器立起来——Paper、一个正经的 systemd 服务、省 RAM 的配置、防火墙和备份。读到最后,你会有一台熬过崩溃、熬过重启、也不会悄悄吃掉你整台机器的 Minecraft 服务器。

开始前一个诚实的说明:那个用例页里的 CPU 和 RAM 界限仍然适用。Paper 在一个 Small 或 Medium 套餐上给一群朋友玩很棒。一个给大社区的 150 mod 整合包不是这些套餐的用途,再多的配置也修不了那个。说清楚这点,我们开搭。

1. 装 Java

Paper 跑在 Java 上。装一个 headless JDK——对当前的 Minecraft 版本那是 Java 21:

sudo apt update
sudo apt install -y openjdk-21-jre-headless
java -version

如果你的 Minecraft 版本更老,装它要求的 Java(1.18-1.20 时代是 17)。如果版本不对,服务器日志会大声抱怨。

2. 设好服务器目录和 Paper

以它自己的用户跑服务器,而不是 root——万一出岔子,你想让爆炸半径小。

sudo adduser --system --group --home /opt/minecraft minecraft
sudo -u minecraft mkdir -p /opt/minecraft/server
cd /opt/minecraft/server

下载你 Minecraft 版本的 Paper jar(从他们的下载页拿 URL)、保存为 server.jar:

sudo -u minecraft wget -O server.jar "PASTE_PAPER_DOWNLOAD_URL_HERE"

跑一次以生成配置文件,然后接受 EULA:

sudo -u minecraft java -Xms1G -Xmx3G -jar server.jar --nogui
# 它会立刻停下、要你接受 EULA
sudo -u minecraft sed -i 's/eula=false/eula=true/' eula.txt

-Xmx3G 是 JVM 堆的上限。在一个 4 GB 的 Small 套餐上,给 JVM 约 3 GB 让操作系统有喘息空间。别把它设成你的全部 RAM——JVM 在堆之外还有开销,而 OOM 杀手不谈判。

3. 调 server.properties 省 RAM

这是你免费给自己买来性能的地方。打开 server.properties、设:

view-distance=8
simulation-distance=6
max-players=10

记住单线程的现实:Minecraft 的 tick 依赖一个核。如果 TPS 掉了,更多 RAM 帮不上——降低 simulation-distance 和怪物上限会。

4. 作为 systemd 服务来跑

这是把“一个我跑过一次的 jar”变成“一台服务器”的部分。创建 /etc/systemd/system/minecraft.service:

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

[Service]
User=minecraft
Group=minecraft
WorkingDirectory=/opt/minecraft/server
ExecStart=/usr/bin/java -Xms1G -Xmx3G -jar server.jar --nogui
Restart=on-failure
RestartSec=10
SuccessExitStatus=0 143

[Install]
WantedBy=multi-user.target

Restart=on-failure 是要紧的那行——如果 JVM 崩溃,systemd 在十秒内把它拉回来。SuccessExitStatus=... 143 让 systemd 不把一次正常的 SIGTERM 关机当成失败。启用并启动它:

sudo systemctl daemon-reload
sudo systemctl enable --now minecraft
sudo systemctl status minecraft
sudo journalctl -u minecraft -f   # 实时日志

现在它开机就起、崩溃就重启,日志进 journald。

5. 开防火墙端口

Minecraft 默认监听 TCP 25565。只开那个:

sudo ufw allow 25565/tcp
sudo ufw enable

把服务器的 IP 给你的朋友(如果你改了端口就加 :25565)。别开任何你不需要的——跑自己机器的全部意义就是你决定什么可达。

6. 备份世界

那件人们一直跳过、直到希望自己没跳过的那天。一个简单的脚本:

#!/bin/bash
cd /opt/minecraft/server
TS=$(date +%Y%m%d-%H%M)
tar czf /opt/minecraft/backups/world-$TS.tar.gz world world_nether world_the_end

从 cron 跑它,而且——这是重要的一半——把归档拷到服务器之外,到对象存储或另一台机器。一个跟世界在同一块磁盘上的备份随磁盘一起死。如果你的世界要紧,在打 tar 之前先在服务器控制台里跑 save-off 和 save-all,这样你永远不会在写入中途做快照。

就这样

Java、Paper、调好的配置、一个自动重启的 systemd 服务、一个防火墙端口,以及住在别处的备份。那就是一台像样运转的 Minecraft 服务器。

如果你还没有机器:挑一个套餐——一小群人用 Small($8)、往十个玩家推就用 Medium($12)——用 USDC 或 USDT 付款(无需 KYC、不用文件),你大约 60 秒就有 root。然后照着这一页往下做。最后再诚实提醒一次:这是给原版或跟朋友玩 Paper 的对的配置。一个给大社区的重整合包需要不同的硬件,我们宁愿你先从我们这儿听到这句。

常见问题

我需要哪个 Java 版本?

近期的 Minecraft 版本想要 Java 17 或更新;最新的想要 Java 21。装你 Minecraft 版本要求的那个 OpenJDK 构建——把服务器跑一次,如果 Java 版本不对它会清楚地告诉你。用一个 headless 的 JRE/JDK,这样你不会拉进一个你永远用不上的桌面栈。

登出后怎么让服务器继续跑?

把它作为一个 systemd 服务来跑。那给你 start/stop/status 命令、经 journalctl 的日志、JVM 崩溃时自动重启、以及开机启动——远好过一个你得记得重连的 screen 会话。服务文件在指南里。

我该给 JVM 多少 RAM?

把 -Xmx 设得比你套餐的总 RAM 略低,好让操作系统留一些——在一个 4 GB 的 Small 套餐上,给 JVM 约 3 GB 是合理的。别把 -Xmx 设成你的全部 RAM;操作系统和 JVM 自己的开销需要余量,否则你会被 OOM 收割者杀掉。

我怎么备份世界?

停掉服务器(或先跑 save-off/save-all)、把世界文件夹打成 tar、把归档拷到机器之外——到对象存储或另一台服务器。把它放上 cron。一个跟世界坐在同一块磁盘上的备份不是备份;它随磁盘一起死。

← 返回博客查看套餐与价格 →

评论

暂无评论。来做第一个吧。

发表评论

评论在显示前会经过审核。