不用工具, 一步步手搓 Minecraft 服务器 · 回官网
不同 MC 版本要求不同的 Java, 装错版本服务器起不来:
| MC 版本 | Java 版本 | Debian/Ubuntu 安装 |
|---|---|---|
| 1.16.5 及以下 | Java 8 | sudo apt install openjdk-8-jdk |
| 1.17 | Java 16 | sudo apt install openjdk-16-jdk |
| 1.18 - 1.20.4 | Java 17 | sudo apt install openjdk-17-jdk |
| 1.20.5 - 1.21.x | Java 21 | sudo apt install openjdk-21-jdk |
| 25.x / 26.x | Java 25 | sudo apt install openjdk-25-jdk |
验证: java -version 第一行会显示版本号。
brew install openjdk@21。mkdir myserver && cd myserver# 以 1.21.1 为例, 其他版本把链接里的版本号换掉
wget https://www.1b1t.cn/serverdown/bmclapi2.bangbang93.com/version/1.21.1/server -O server.jarecho "eula=true" > eula.txt
# -Xmx 是内存上限, 按机器内存调整, 建议不超过空闲内存的 70%
java -Xms512M -Xmx2G -jar server.jar noguiDone (xx.xs)! 就是开好了。wget https://www.1b1t.cn/serverdown/maven.fabricmc.net/net/fabricmc/fabric-installer/1.0.1/fabric-installer-1.0.1.jar -O fabric-installer.jar
(版本号以镜像中心 Fabric 分类里最新的为准)
java -jar fabric-installer.jar server -mcversion 1.21.1 -downloadMinecraft
java -Xms512M -Xmx2G -jar fabric-server-launch.jar nogui
mods/ 目录(首次启动后自动生成)。java -jar neoforge-21.1.250-installer.jar --installServer
run.sh、libraries/。改内存:
echo "-Xms512M -Xmx4G" > user_jvm_args.txt
./run.sh noguimods/ 目录。与 NeoForge 步骤完全一样, 只是安装器从镜像中心的 Forge 分类下载 (版本号带 MC 前缀, 如 1.21.5-55.1.13)。1.20.1 及以下的 mod 建议用 Forge, 1.20.1 以上建议 NeoForge。
| 配置 | 说明 | 示例值 |
|---|---|---|
server-port | 端口(冲突时换一个) | 25565 |
online-mode | 正版验证(关=盗版可进) | true/false |
motd | 服务器列表显示的名字 | 1b1t Server |
difficulty | 难度 | peaceful/easy/normal/hard |
max-players | 最大人数 | 20 |
view-distance | 视距(调大更吃内存) | 10 |
white-list | 白名单 | true/false |
level-seed | 世界种子(空=随机) |
改完重启才生效。其他项保持默认即可。
gamerule keepInventory true, 或写入启动命令:
java ... nogui <<< "gamerule keepInventory true"stop 回车 — 会保存世界后退出。
不要直接 Ctrl+C 或杀进程, 可能损坏存档。sudo apt install screen screen -S mc # 新建会话 java -Xms512M -Xmx2G -jar server.jar nogui # Ctrl+A 再按 D 退出会话(服务器继续跑), 回来自: screen -r mc
cd .. && tar czf backup-$(date +%F).tar.gz myserver/
| 现象 | 原因与解决 |
|---|---|
| 端口已被占用 | 另一个程序占着端口, 改 server-port 或先停掉它 |
| 启动后没反应直接退出 | 看日志: Java 版本不对 / eula 没同意 / 内存参数错误 |
| 别人连不上 | 检查防火墙放行端口、云服务器安全组、内网需端口映射/内网穿透 |
| 内存不足崩溃 | 调小 -Xmx, 或加服务器内存 |
| 世界加载慢 | 首次生成世界正常, 或换 SSD |