21 10 月 2026

我的世界 Java 版是全世界被架设次数最多的游戏,没有之一。它的开服生态也最成熟:PaperMC(性能强化的服务端)+ 插件体系 + 成熟的调优方法论。这篇教程是面向"想认真经营一个服"的完全指南:Paper 安装、Aikar's Flags 启动参数、server.properties 关键项、白名单与权限组、备份和 TPS 调优。

已有基岩版(手机/Win10 端)开服教程见我的世界基岩版开服,两版客户端不互通,别买错。

本文由财富云计算整理,我们主营 NAT 型云服务器(无独立公网 IP),价格比独立 IP 机型省一半以上,20 人小服 2 核 4G 轻松带动。更多开服教程见端口速查表。

一、先选服务端:三选一

服务端特点适合
官方原版 Vanilla无插件,最接近纯净体验纯净生存,但性能一般
Paper(含 Paperfork)性能优化 + 插件兼容 Bukkit/Spigot首选,90% 的服都用它
Fabric/ForgeMOD 端,装模组不装插件玩 MOD(Create、机械动力等)

结论:不知道选什么就选 Paper。插件生态(领地、权限、经济、传送、地网)全建立在 Bukkit/Spigot API 上,Paper 性能比原版好一大截,配置项还多。

二、配置需求

规模CPU内存磁盘带宽
1–5 人纯净2 核2–4 GB10 GB5 Mbps
10–20 人 + 常用插件2–4 核4–6 GB15 GB10 Mbps
20–50 人4 核8–12 GB20 GB20 Mbps
50–100 人或大型 MOD4–8 核16 GB+30 GB+30 Mbps
  • 内存是第一瓶颈,插件越多、视距越大地图越大越吃内存。JVM 要设上限(-Xmx),不然能吃光物理内存。
  • 单端口 TCP 25565,NAT 映射一条搞定,是 NAT 型服务器最友好的游戏之一(NAT 型能力指南)。
  • 磁盘 SSD,区块加载时 I/O 敏感。

三、安装 Paper + Java

sudo adduser --disabled-password --gecos "" mc
sudo mkdir -p /opt/mc && sudo chown mc:mc /opt/mc

# Java 17+(新版 Paper 需要)
sudo apt install -y openjdk-17-jre-headless
java -version

下载 Paper(版本号按实际改,最新构建号去 papermc.io 查):

sudo -u mc -s
cd /opt/mc
wget "https://api.papermc.io/v2/projects/paper/versions/1.21.1/builds/100/downloads/paper-1.21.1-100.jar" -O paper.jar

同意 EULA(不同意服务端起不来,这是 Mojang 要求):

echo "eula=true" > /opt/mc/eula.txt

首次启动生成配置:

cd /opt/mc
java -Xms4G -Xmx4G -jar paper.jar nogui

看到 "Done" 后 stop。server.properties 等文件已生成。

四、启动参数:Aikar's Flags(性能关键)

JVM 默认 GC 参数对 Minecraft 是灾难,卡顿元凶。Paper 社区公认的启动参数(Aikar's Flags),4G 内存版:

java -Xms4G -Xmx4G -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 paper.jar nogui

写进启动脚本:

cat > /opt/mc/start.sh <<'EOF'
#!/bin/bash
cd /opt/mc
exec java -Xms4G -Xmx4G -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 \
  -jar paper.jar nogui
EOF
chmod +x /opt/mc/start.sh

Xms 和 Xmx 设成一样(避免动态扩缩容的停顿),大小 = 你买的物理内存的 80% 左右。这套参数在 20 人服上能把 TPS 从 15 拉到 19.5+,是全篇最值的复制粘贴。

五、server.properties 关键项

motd=§6欢迎来到 §b Paper 生存服
server-port=25565
max-players=20
online-mode=true          # true=正版验证,false=离线模式(盗版/内网)
white-list=true           # 开白名单,只放名单内玩家
enforce-whitelist=true
difficulty=hard
gamemode=survival
pvp=true
view-distance=8           # 视距,TPS杀手,10以上慎重
simulation-distance=6     # 实体模拟距离,比 view-distance 更影响 TPS
enable-command-block=false
spawn-protection=0
level-name=world
配置说明
online-modetrue 只有正版账号能进;false 任何客户端能进(配合白名单 + 强登录插件)
white-list好友服必开,配合 whitelist.json
view-distance玩家可见区块半径,每 +1 TPS 掉一截,8 是甜点位
simulation-distance实体活动范围,红石/农场多的服调低收益巨大

六、systemd 守护

sudo tee /etc/systemd/system/mc.service <<'EOF'
[Unit]
Description=Minecraft Paper Server
After=network.target

[Service]
Type=simple
User=mc
ExecStart=/opt/mc/start.sh
Restart=on-failure
RestartSec=10
WorkingDirectory=/opt/mc
Sockets=mc.socket
StandardInput=socket
StandardOutput=journal
StandardError=journal

[Install]
WantedBy=multi-user.target
EOF

# 管理通道:通过 socket 发控制台命令
sudo tee /etc/systemd/system/mc.socket <<'EOF'
[Unit]
Description=Minecraft Console Socket

[Socket]
ListenFIFO=/run/mc.stdin

[Install]
WantedBy=sockets.target
EOF

sudo systemctl daemon-reload
sudo systemctl enable --now mc.socket mc
journalctl -u mc -f

给控制台发命令(比如关服前广播):

echo "say 服务器将在 5 分钟后重启" | sudo tee /run/mc.stdin

不搞 socket 也行,用 screen/tmux 挂着(screen/tmux 指南),但 systemd + socket 是服务器上的正规做法,服务挂了自动拉起。

七、白名单、OP 与权限组

白名单(JSON 里用 UUID 不是昵称):

# 生成 UUID:让玩家提供,或从 https://mcuuid.net 查
cat > /opt/mc/whitelist.json <<'EOF'
[
  {"uuid":"069a79f4-44e9-4726-a5be-fca90e38aaf5","name":"PlayerA"},
  {"uuid":"853c80ef-3c37-49fd-aa49-938b674adae6","name":"PlayerB"}
]
EOF

OP:编辑 ops.json,同理 UUID + level(1–4,4 是全权)。好友服别随便给人 level 4。

权限组(公共服必备):装 LuckPerms 插件,Web 编辑器图形化管理组权限(建造、传送、命令节点),比手写 JSON 舒服一万倍。必装插件清单:

插件作用
LuckPerms权限组系统
EssentialsX基础命令(/home /tpa /kit)
WorldGuard + WorldEdit领地保护 + 快速建造
CoreProtect操作回滚(抓破坏者、找回被偷东西)
Chunky预生成地图,减少运行时卡顿
BlueMap网页版在线地图,给玩家看
spark性能分析,卡了先跑它

插件放 plugins/ 目录,重启生效。每次加插件后看 /tps 和内存,插件是 TPS 第一杀手。

八、备份:世界 + 配置一起走

cat > /opt/mc/backup.sh <<'EOF'
#!/bin/bash
SRC="/opt/mc"
DST="/opt/mc/backups"
mkdir -p "$DST"
echo "save-all flush" | sudo tee /run/mc.stdin   # 先让游戏存档
sleep 5
tar -czf "$DST/mc-$(date +%F-%H%M).tar.gz" \
  -C "$SRC" world world_nether world_the_end \
  server.properties ops.json whitelist.json banned-players.json \
  paper-global.yml eula.txt plugins 2>/dev/null
ls -t "$DST"/mc-*.tar.gz | tail -n +21 | xargs -r rm
EOF
chmod +x /opt/mc/backup.sh
(crontab -l 2>/dev/null; echo "0 4 * * * /opt/mc/backup.sh") | crontab -

存档在 world/ 目录,拷走它 = 带走整个世界。备份体系化见服务器备份策略,换服搬家见游戏服迁移指南。

九、更新与性能监控

Paper 更新 = 下载新 jar 替换:

sudo systemctl stop mc
# 下载新版本 paper.jar 替换,先备份旧版
cp /opt/mc/paper.jar /opt/mc/paper.jar.bak
# wget 新版本
sudo systemctl start mc

Paper 小版本可以无缝更,跨 Minecraft 大版本(1.20→1.21)前必须备份,插件兼容性是大版本更新第一坑。

日常监控 TPS:

# 游戏内(OP):
/tps        # Paper 命令,看每秒 tick
/mspt       # 每 tick 毫秒数,健康值 <50

# 系统层:
top         # JVM 的 java 进程 CPU/内存

TPS 低于 18 就该优化了,顺序:降 view-distance → 降 simulation-distance → 砍插件 → 用 spark 找热点 → 最后才是升配。排查流程见服务器资源排查,监控体系见游戏服监控实战。

十、常见问题

Q1:服务端起不来,日志说 EULA?
eula.txt 里 eula=true 没写或文件名错。这是 Mojang 的许可要求,读一遍再同意。

Q2:玩家进不来,提示 Invalid session?
online-mode=true 但玩家是盗版/离线启动器。要么统一正版,要么关 online-mode + 白名单 + 登录插件(注意安全)。

Q3:TPS 只有 15 怎么办?
按第九节顺序排查。十有八九是 view-distance 太大或插件太多,不是配置不够。

Q4:OOM 内存溢出崩溃?
-Xmx 超过物理内存,或插件内存泄漏。重启 + 逐个卸插件定位。大服加 swap 兜底(swap 优化)。

Q5:更新后插件全红?
大版本升级插件不兼容。逐个更新插件,还不行就等作者。跨版本前备份世界是第一保险。

Q6:一台机器多开?
每个服独立目录 + 端口 +1(25566/25567)+ 独立 systemd,2 核 4G 能带两三个 10 人纯净服,方案见一台服务器开多个游戏服。

十一、小结

MC Java 版开服是"生态最成熟、坑最明确"的活:Paper + Aikar's Flags 解决性能,白名单 + LuckPerms 解决管理,Chunky 预生成 + BlueMap 提升体验,/tps + spark 定位卡顿。单端口 TCP 25565 对 NAT 型服务器极其友好,是新手开服的第一站。

需要服务器,可以看看财富云计算的 NAT 型云服务器——无独立公网 IP,价格比独立 IP 机型省一半以上,20 人小服轻松带动。更多游戏开服教程持续更新在游戏配置与开服教程总索引。


相关阅读:我的世界基岩版开服 · 泰拉瑞亚开服 · 饥荒联机开服 · 游戏服配置实测 · 游戏服运营完全手册

延伸阅读
  1. 高防误区与避坑清单:25 个坑+下单前必问 14 问+到货验货流程
  2. DNS 攻击防护专题:劫持、隧道、投毒、放大四类攻击与 DNSSEC
  3. 电商大促防攻击预案:T-14 到当天的分级响应与降级开关
  4. 源站真实 IP 隐藏完全指南:六大暴露面排查+NAT 型终极方案
  5. 日志分析找攻击源:Nginx 日志三维度分析法与证据固定
  6. 攻击应急响应手册:六阶段响应流程,从确认到复盘的照做清单
  7. iptables 抗 DDoS 配置模板:状态过滤+SYN 防护+防扫描+游戏服版
  8. OpenResty Lua 自研 WAF:动态限流+攻击特征检测+Redis 黑名单
更多阅读
  1. 上一篇:流放者柯南 Conan Exiles 开服完全指南:Wine 跑服+ServerSettings+奴隶玩法
  2. 下一篇:热门联机游戏开服难度横评:2026 年哪些游戏适合自建服
发表评论 3