AI 摘要
AI
正在生成摘要...

想和几个朋友在同一个世界里挖矿、建房、打龙,又不想受限于局域网,那自己搭一个Java版服务器就是最好的选择。这篇笔记记录我的搭建过程,从服务端选择到朋友成功加入,一步步来。
一、为什么选Java版?
Minecraft分Java版和基岩版。Java版支持最丰富的Mod和服务端类型,是开私服的首选。这意味着以后想加插件、装整合包,都有最大的自由度。

二、服务端怎么选?
很多人上来就下载官方原版服务端——那其实是最不推荐的选项,性能差、无优化。新手直接选Paper就好:

服务端 特点 适合谁
Vanilla 官方原版 不推荐,没有任何优化
Paper 优化版,基于Spigot 纯净服/插件服首选
Forge 经典Mod框架 装大型Mod用
Fabric 轻量Mod框架 轻量Mod用
一句话建议:只想原版生存选Paper(性能比原版提升30-50%);想玩Mod再考虑Forge或Fabric。

三、服务器需要什么配置?
MC服务器最吃的是内存(不是CPU),分配原则很简单:

服务器基础占用约1-1.5GB

每个在线玩家额外200-400MB

每个Mod额外50-200MB

所以开个5人纯净服,给MC分配2-3GB内存就够。10人以上或装Mod,建议5-6GB起步

第一部分:基础环境(所有服务端通用)

  1. 查看当前用户
BASH
whoami
  1. 更新软件包列表
BASH
sudo apt update
  1. 安装Java 21
BASH
sudo apt install openjdk-21-jdk -y

MC 1.20.5以上需要Java 21,1.17-1.20.4用Java 17
4. 验证Java安装

BASH
java -version

能看到版本号就说明成功了
5. 安装screen(后台运行神器)

BASH
sudo apt install screen -y
BASH
screen -version
  1. 安装解压缩工具
BASH
sudo apt install zip unzip -y

第二部分:Paper服务端搭建(纯净服首选)

  1. 创建目录并进入
BASH
mkdir /home/mc-paper && cd /home/mc-paper
  1. 下载Paper服务端
BASH
wget https://api.papermc.io/v2/projects/paper/versions/1.21.4/builds/最后版本号/downloads/paper-1.21.4-最后版本号.jar -O server.jar

papermc.io 查最新版本号,替换上面两处“最后版本号”
3. 创建启动脚本

BASH
nano start.sh

粘贴以下内容:

BASH
#!/bin/bash
java -Xmx4G -Xms4G -jar server.jar nogui

-Xmx4G是最大内存,-Xms4G是最小内存,按自己服务器配置改

按Ctrl+X,然后Y,再回车保存。**
4. 给脚本执行权限

BASH
chmod +x start.sh
  1. 初次启动(生成配置文件)
BASH
./start.sh

会报错并停止,正常现象,它生成了eula.txt
6. 同意EULA协议

BASH
nano eula.txt

eula=false改成eula=true,保存退出。
7. 用screen正式启动

BASH
screen -S mc-paper
./start.sh

启动后就可以关闭SSH页面了

第三部分:Forge服务端搭建(大型Mod服)

  1. 创建目录
BASH
mkdir /home/mc-forge && cd /home/mc-forge
  1. 下载Forge安装器
BASH
wget https://maven.minecraftforge.net/net/minecraftforge/forge/1.20.1-47.3.0/forge-1.20.1-47.3.0-installer.jar -O forge-installer.jar

files.minecraftforge.net 找你要的版本,替换下载链接

  1. 安装服务端
BASH
java -jar forge-installer.jar --installServer

这一步会生成一堆文件,其中libraries文件夹是核心依赖

  1. 创建启动脚本
BASH
nano start.sh

粘贴:

BASH
#!/bin/bash
java -Xmx6G -Xms6G -jar forge-1.20.1-47.3.0.jar nogui

注意:forge-xxx.jar名字要和你下载的版本完全一致,去ls确认一下
保存退出后:

BASH
chmod +x start.sh
  1. 初次启动并同意EULA
BASH
./start.sh
# 报错停止后
nano eula.txt
# 改eula=true
  1. screen后台启动
BASH
screen -S mc-forge
./start.sh

Forge首次启动很慢,耐心等,出现“Done”就稳了

第四部分:Fabric服务端搭建(轻量Mod服,生电服)

  1. 创建目录
BASH
mkdir /home/mc-fabric && cd /home/mc-fabric
  1. 下载Fabric安装器
BUSH
wget https://meta.fabricmc.net/v2/versions/loader/1.21.4/0.16.10/1.0.1/server/jar -O fabric-installer.jar

fabricmc.net 选你的MC版本和loader版本,生成下载链接
3. 安装服务端

BASH
java -jar fabric-installer.jar server nogui

这会直接生成fabric-server-launch.jar
4. 创建启动脚本

BASH
nano start.sh

粘贴:

BASH
#!/bin/bash
java -Xmx4G -Xms4G -jar fabric-server-launch.jar nogui

保存退出后:

BASH
chmod +x start.sh
  1. 初次启动并同意EULA
BASH
./start.sh
nano eula.txt
# 改eula=true
  1. 放Mod
    Fabric的mod放入mods文件夹,注意还需要装Fabric API

  2. screen启动

BASH
screen -S mc-fabric
./start.sh

第五部分:screen常用指令

BUSH
screen -S <名字>

创建一个名为<名字>的会话,开服用这个

BASH
screen -ls

查看所有会话列表

BASH
screen -r <名字>

第六部分:防火墙(不嫌麻烦就搞)

BASH
sudo apt install ufw -y
BASH
sudo ufw status verbose

查看防火墙当前状态

BASH
sudo ufw allow 25565/tcp

放行MC默认端口,你改了什么端口就填什么

BASH
sudo ufw enable

启用防火墙(确定已放行SSH端口再开,否则断连)

第七部分:压缩解压

BASH
unzip <文件名.zip>

解压zip文件

BASH
zip -r <压缩后名.zip> <文件夹名>

将文件夹压缩为zip

BASH
tar -xvf <文件名.tar>

解压tar文件

BASH
tar -xzvf <文件名.tar.gz>

解压tar.gz文件

第八部分:启动服务器通用指令

BASH
java -Xmx4G -Xms4G -jar server.jar nogui

-Xmx最大内存,-Xms最小内存,单位G或M,nogui不显示图形界面

BASH
./start.sh

推荐方式,把参数都写在脚本里,每次直接执行

第十一部分:服务端控制台常用指令

以下指令在MC服务器控制台中直接输入,或游戏内OP玩家加/前缀使用:

BASH
op <玩家名>
给玩家管理员权限
BASH
deop <玩家名>
移除管理员权限
BASH
whitelist add <玩家名>
添加白名单
BASH
whitelist remove <玩家名>
移除白名单
BASH
whitelist on
开启白名单
BASH
whitelist off
关闭白名单
BASH
ban <玩家名>
封禁玩家
BASH
pardon <玩家名>
解封玩家
BASH
gamemode creative <玩家名>
切换游戏模式:survival/creative/spectator
BASH
difficulty peaceful
设置难度:peaceful/easy/normal/hard
BASH
gamerule keepInventory true
死亡不掉落
BASH
gamerule doFireTick false
火不蔓延
BASH
time set day
设为白天
BASH
weather clear
天气放晴
BASH
stop
安全关闭服务器,别直接杀进程
BASH
list
查看当前在线玩家

第十二部分:实用配置速查
修改server.properties文件中的常用参数:
参数 推荐值 说明
max-players 10 最大玩家数
online-mode false 关闭正版验证(盗版能进)
difficulty normal 默认难度
pvp true/false 是否开启PVP
view-distance 10 视距,配置低改小
simulation-distance 8 模拟距离
motd一段文字 服务器列表显示的名字
改完需要重启服务器才生效,控制台输入stop后再重新./start.sh

第十三部分:疑难杂症速查

BASH
# 端口被占用
lsof -i :25565
kill -9 <PID>
BASH
# 内存不足
free -h

看available还剩多少,不够就升级配置

BASH
# Java版本不对
sudo update-alternatives --config java

切换默认Java版本

BASH
# 服务器进不去
# 检查三点:防火墙端口放行没?云服务器安全组放行没?eula.txt改了没?

这份“圣经”会持续更新,有问题欢迎留言补充。祝开服顺利,挖矿愉快。

评论