全志 H618 Minecraft 服务器
全志 H618 Minecraft 服务器部署笔记
- 设备:全志 H618 开发板(ARMv8,4 GB+ 内存更佳),系统建议使用 Debian/Ubuntu 纯 64 位镜像,启用 64‑bit 内核。
- 目标:下载纯净版 Minecraft Java 服务器并在
/home/kickpi/minecraft_server路径下运行,方便写入博客。
1. 基础环境
sudo apt-get update
sudo apt-get install -y curl wget git screen ufw unzip htop net-tools
可选:为服务器单独创建用户,降低风险。
sudo adduser --disabled-password --gecos "" mc
sudo usermod -aG sudo mc
2. 安装 Java 21(ARM64)
sudo apt-get install -y openjdk-21-jdk
java -version # 确认版本 ≥ 21
若仓库无 21,可使用 Adoptium Temurin tar.gz,解压到 /opt/java/temurin-21,并写入 /etc/profile.d/java.sh。
3. 准备服务器目录
mkdir -p /home/kickpi/minecraft_server
cd /home/kickpi/minecraft_server
下载 Mojang 官方 server.jar(示例:1.21.1,注意替换为最新 manifest 中的 URL):
curl -L -o server.jar
https://piston-data.mojang.com/v1/objects/5722466dbafe41ecaf95c5cf02a4ceff5aa91526/server.jar
4. 首次启动并接受 EULA
cd /home/kickpi/minecraft_server
java -Xmx2048M -Xms1024M -jar server.jar nogui
首次会失败并生成 eula.txt,编辑为 eula=true:
sed -i 's/eula=false/eula=true/' eula.txt
5. 配置与脚本
可按需编辑 server.properties:
nano server.properties
# server-port=25565, online-mode=false(离线) 或 true(正版), max-players 等
准备启动脚本 start.sh:
cat <<'EOF' > /home/kickpi/minecraft_server/start.sh
#!/bin/bash
cd /home/kickpi/minecraft_server
exec java
-Xms1024M -Xmx2048M
-XX:+UseG1GC -XX:+UnlockExperimentalVMOptions
-XX:G1NewSizePercent=20 -XX:G1MaxNewSizePercent=60
-XX:G1HeapRegionSize=16M -XX:G1ReservePercent=20
-XX:InitiatingHeapOccupancyPercent=15
-XX:SurvivorRatio=32 -XX:+PerfDisableSharedMem
-XX:MaxTenuringThreshold=1
-jar server.jar nogui
EOF
chmod +x /home/kickpi/minecraft_server/start.sh
(参数可根据 H618 内存调整,例如 3-4 GB 可设 -Xmx3072M。)
6. systemd 自启(可选)
sudo tee /etc/systemd/system/minecraft.service >/dev/null <<'EOF'
[Unit]
Description=Minecraft Server
After=network.target
[Service]
WorkingDirectory=/home/kickpi/minecraft_server
ExecStart=/home/kickpi/minecraft_server/start.sh
User=mc
Restart=on-failure
LimitNOFILE=65535
[Install]
WantedBy=multi-user.target
EOF
sudo systemctl daemon-reload
sudo systemctl enable --now minecraft.service
查看状态:
sudo systemctl status minecraft.service
journalctl -u minecraft.service -f
7. 网络准备
# 开放默认端口
sudo ufw allow 25565/tcp
sudo ufw reload
# 查看当前板卡 IP
/sbin/ifconfig -a
# 或使用新命令
ip addr show
- 如果要外网访问,登录路由器 → 端口转发 25565 → 指向板子局域网 IP。
- 查看局域网 IP:
hostname -I - 查看公网 IP:
curl ifconfig.me
8. 玩家连接方式
- 局域网:同一网段内,客户端在多人游戏中选择“直接连接”,输入
板子局域网IP:25565(例:192.168.1.50:25565),可先用ping 192.168.1.50测通。 - 公网/跨网段:在路由器配置 25565 TCP 端口转发到开发板;若没有固定公网 IP,可在光猫/路由器上启用 DDNS(如花生壳、Cloudflare、阿里 DDNS)。客户端填入
your-domain.com:25565。 - 验证端口:内网用
sudo ss -tulpn | grep 25565,公网可用https://www.canyouseeme.org/检查是否开放。 - 正版/离线差异:若
online-mode=true,客户端需登录正版账号;若设为false,请保证ops.json、白名单中的 UUID 与离线启动器一致。 - 常见连接报错:
Timed out多为端口或 NAT 问题;Unknown host需检查 DNS;Not authenticated with Minecraft.net代表正版验证未通过。
9. 常用维护命令
# 进入服务器控制台
screen -S mc /home/kickpi/minecraft_server/start.sh
# 后台已有 systemd
sudo systemctl stop minecraft.service
sudo systemctl start minecraft.service
sudo systemctl restart minecraft.service
# 实时日志
tail -f /home/kickpi/minecraft_server/logs/latest.log
OP 玩家处理(离线模式请确保 UUID 正确):
# 控制台或后台 screen
op 玩家名
# 或直接编辑 /home/kickpi/minecraft_server/ops.json
10. 例行备份/更新
cd /home/kickpi/minecraft_server
sudo systemctl stop minecraft.service
tar czf world_$(date +%F).tar.gz world
# 下载新 server.jar 替换后
sudo systemctl start minecraft.service
11. 排错速查
| 问题 | 排查命令 |
|---|---|
| 端口未监听 | `sudo ss -tulpn |
| Java 未运行 | `ps -ef |
| 性能不足 | 降低 view-distance、simulation-distance,或调大 -Xmx;必要时关闭 online-mode 减少加密开销 |
| 离线 UUID 不匹配 | 对照 usercache.json 与 ops.json |










