如何开一个MC服务器
前言我感觉不需要写(
准备工作
设备&工具
-
没手不行(
-
一台服务器(可以是VPS,杜甫),我这里用一台实体机演示,系统是Ubuntu22.04,Debian系大差不差,我的配置是E3-1226v3 +8GB RAM,纯净服至少3GB RAM(1GB也能开,256都行)
-
一个用于连接至服务器的工具,比如Xshell,并且我建议搭配一个文件传输工具,如XFTP或WinSCP
安装一些可选软件
安装Micro编辑器,这个编辑器适合新手,可选安装,会用nano就别装了
sudo apt update && sudo apt install micro -y
开始吧
创建服务器文件夹
为了不把家目录搞的乱七八糟,创建一个文件夹是十分甚至有九分的好(
先挑选一个你喜欢的名字,并且确保它不要被占用
a05777@ser-2204:~$ ls
ddns-go frp My-CA
a05777@ser-2204:~$
确保你想要的名字没被占用,然后
mkdir -p mcser
接着使用cd命令进入你创建的文件夹
a05777@ser-2204:~$ cd mcser
a05777@ser-2204:~/mcser$
下载服务端
我这里用Leavesmc作为演示,你也可以使用PaperMC等,操作大同小异,大同小异(
进入Leavesmc的官网

点击“下载”
然后找到这个页面

找到你想下载的版本,在下载页面的下载按钮单击鼠标右键,选择复制下载链接

来到你的服务器,输入
wget <你复制的链接>
我这里使用1.21.4作为演示
wget https://api.leavesmc.org/v2/projects/leaves/versions/1.21.4/builds/82/downloads/leaves-1.21.4.jar
如果说你的服务器和我的一样在国内,访问GitHub比较抽风,那就在你的电脑上把它下载下来,再上传上去,效果是一样的
看一下下载下来的文件叫什么名字
a05777@ser-2204:~/mcser$ ls
leaves-1.21.4.jar
a05777@ser-2204:~/mcser$
可以改一个你自己喜欢的名字
a05777@ser-2204:~/mcser$ mv ./leaves-1.21.4.jar ./server.jar
a05777@ser-2204:~/mcser$ ls
server.jar
a05777@ser-2204:~/mcser$
然后+x
a05777@ser-2204:~/mcser$ chmod +x server.jar
a05777@ser-2204:~/mcser$ ls
server.jar
a05777@ser-2204:~/mcser$
安装Java
据说Oracle GraalVM性能好,所以这里使用Oracle GraalVM作为演示,你也可以使用OpenJDK或AzulJava等
因为我实在不想改配置文件和系统变量,因此使用写绝对路径的方法,不动系统目录
打开Oracle GraalVM下载页面,选择你需要的版本
在下载按钮上右键鼠标,复制下载链接,来到服务器上
mkdir -p java
cd java
wget <你复制的链接>
我的是
mkdir -p java
cd java
wget https://download.oracle.com/graalvm/21/latest/graalvm-jdk-21_linux-x64_bin.tar.gz
a05777@ser-2204:~/mcser/java$ ls
graalvm-jdk-21_linux-x64_bin.tar.gz
a05777@ser-2204:~/mcser/java$
然后解压文件(替换成你实际上下下来的文件名)
tar -zxvf graalvm-jdk-21_linux-x64_bin.tar.gz
a05777@ser-2204:~/mcser/java$ ls
graalvm-jdk-21.0.11+9.1 graalvm-jdk-21_linux-x64_bin.tar.gz
a05777@ser-2204:~/mcser/java$
然后就可以给压缩包删掉了,能省一点空间是一点
rm graalvm-jdk-21_linux-x64_bin.tar.gz
接着使用mv指令将文件夹里的东西剪切到当前目录
a05777@ser-2204:~/mcser/java$ mv ./graalvm-jdk-21.0.11+9.1/* ./
a05777@ser-2204:~/mcser/java$ ls
bin conf graalvm-jdk-21.0.11+9.1 GRAALVM-README.md include jmods legal lib license-information-user-manual.zip LICENSE.txt man release
a05777@ser-2204:~/mcser/java$
然后
a05777@ser-2204:~/mcser/java$ rm -r graalvm-jdk-21.0.11+9.1
a05777@ser-2204:~/mcser/java$ ls
bin conf GRAALVM-README.md include jmods legal lib license-information-user-manual.zip LICENSE.txt man release
a05777@ser-2204:~/mcser/java$
运行服务端
我这里分配2G内存,你也可以根据服务器情况进行调整
确保你当前处于mc服务器文件夹下
然后运行
/home/<你的用户名>/<你的文件夹>/java/bin/java -Xms1G -Xmx2G -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 -jar server.jar --nogui
我的是
/home/a05777/mcser/java/bin/java -Xms1G -Xmx2G -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 -jar server.jar --nogui
此时服务器会显示
Downloading mojang_1.21.4.jar
慢是正常的,刷一会视频就好了
然后服务器会输出
a05777@ser-2204:~/mcser$ /home/a05777/mcser/java/bin/java -Xms1G -Xmx2G -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 -jar server.jar --nogui
Downloading mojang_1.21.4.jar
Applying patches
Starting org.bukkit.craftbukkit.Main
*** Warning, you've not updated in a while! ***
*** Please download a new build from https://leavesmc.org/downloads/leaves ***
[16:17:32 INFO]: [bootstrap] Running Java 21 (Java HotSpot(TM) 64-Bit Server VM 21.0.11+9-LTS-jvmci-23.1-b92; Oracle Corporation Oracle GraalVM 21.0.11+9.1) on Linux 5.15.0-185-generic (amd64)
[16:17:32 INFO]: [bootstrap] Loading Leaves 1.21.4-82-ver/1.21.4@b04ebcb (2025-08-01T14:28:56Z) for Minecraft 1.21.4
[16:17:32 INFO]: [PluginInitializerManager] Initializing plugins...
[16:17:32 INFO]: [PluginInitializerManager] Initialized 0 plugins
[16:17:34 INFO]: [ReobfServer] Remapping server...
[16:17:43 WARN]: Failed to load eula.txt
[16:17:43 INFO]: You need to agree to the EULA in order to run the server. Go to eula.txt for more info.
[16:17:44 INFO]: [ReobfServer] Done remapping server in 9316ms.
a05777@ser-2204:~/mcser$
然后自动退出,这是正常的,因为我们还没有同意EULA
此时服务器文件夹应该是这样的
a05777@ser-2204:~/mcser$ ls
cache eula.txt java libraries logs plugins server.jar server.properties versions
a05777@ser-2204:~/mcser$
我们使用
micro eula.txt
打开EULA
#By changing the setting below to TRUE you are indicating your agreement to our EULA (https://aka.ms/MinecraftEULA).
#Wed Jul 08 16:17:43 UTC 2026
eula=false
把它改成true
#By changing the setting below to TRUE you are indicating your agreement to our EULA (https://aka.ms/MinecraftEULA).
#Wed Jul 08 16:17:43 UTC 2026
eula=true
micro编辑器是ctrl + s保存,ctrl + q退出,如果你使用nano编辑器,快捷键是ctrl + o写入,然后按一次回车,接着ctrl + x退出
然后重新运行开服指令
如果你和我一样炸了
a05777@ser-2204:~/mcser$ /home/a05777/mcser/java/bin/java -Xms1G -Xmx2G -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 -jar server.jar --nogui
Starting org.bukkit.craftbukkit.Main
*** Warning, you've not updated in a while! ***
*** Please download a new build from https://leavesmc.org/downloads/leaves ***
[16:22:32 INFO]: [bootstrap] Running Java 21 (Java HotSpot(TM) 64-Bit Server VM 21.0.11+9-LTS-jvmci-23.1-b92; Oracle Corporation Oracle GraalVM 21.0.11+9.1) on Linux 5.15.0-185-generic (amd64)
[16:22:32 INFO]: [bootstrap] Loading Leaves 1.21.4-82-ver/1.21.4@b04ebcb (2025-08-01T14:28:56Z) for Minecraft 1.21.4
[16:22:32 INFO]: [PluginInitializerManager] Initializing plugins...
[16:22:33 INFO]: [PluginInitializerManager] Initialized 0 plugins
[16:22:40 ERROR]: You are using a headless JRE distribution.
[16:22:40 ERROR]: This distribution is missing certain graphic libraries that the Minecraft server needs to function.
[16:22:40 ERROR]: For instructions on how to install the non-headless JRE, see https://docs.papermc.io/misc/java-install
[16:22:40 ERROR]:
[16:22:40 ERROR]: java.lang.UnsatisfiedLinkError: /home/a05777/mcser/java/lib/libawt_xawt.so: libXtst.so.6: cannot open shared object file: No such file or directory
a05777@ser-2204:~/mcser$
那么就运行
sudo apt update && sudo apt install -y libxtst6 libxrender1 libxi6
然后重新运行开服指令(这次将会很漫长,刷一会视频或者喝杯饮料)
当你看到
[16:29:23 INFO]: Done (48.624s)! For help, type "help"
的时候就说明服务器已经基本上开好了
服务器配置&插件
先输入stop关闭服务端,不要直接ctrl+c,会导致回档甚至存档损坏
这,是服务器的配置文件
a05777@ser-2204:~/mcser$ cat server.properties
#Minecraft server properties
#Wed Jul 08 16:28:44 UTC 2026
accepts-transfers=false
allow-flight=false
allow-nether=true
broadcast-console-to-ops=true
broadcast-rcon-to-ops=true
bug-report-link=
debug=false
difficulty=easy
enable-command-block=false
enable-jmx-monitoring=false
enable-query=false
enable-rcon=false
enable-status=true
enforce-secure-profile=true
enforce-whitelist=false
entity-broadcast-range-percentage=100
force-gamemode=false
function-permission-level=2
gamemode=survival
generate-structures=true
generator-settings={}
hardcore=false
hide-online-players=false
initial-disabled-packs=
initial-enabled-packs=vanilla
level-name=world
level-seed=
level-type=minecraft:normal
log-ips=true
max-chained-neighbor-updates=1000000
max-players=20
max-tick-time=60000
max-world-size=29999984
motd=A Minecraft Server
network-compression-threshold=256
online-mode=true
op-permission-level=4
pause-when-empty-seconds=-1
player-idle-timeout=0
prevent-proxy-connections=false
pvp=true
query.port=25565
rate-limit=0
rcon.password=
rcon.port=25575
region-file-compression=deflate
require-resource-pack=false
resource-pack=
resource-pack-id=
resource-pack-prompt=
resource-pack-sha1=
server-ip=
server-port=25565
simulation-distance=10
spawn-monsters=true
spawn-protection=16
sync-chunk-writes=true
text-filtering-config=
text-filtering-version=0
use-native-transport=true
view-distance=10
white-list=false
a05777@ser-2204:~/mcser$
通常来说你只需要改这几行
online-mode=true
(正版验证,开启时必须使用正版进入,关闭后可以使用离线登入,但是强烈建议安装AuthMe插件,防熊)
server-port=25565
(服务器监听端口,没啥好说的)
pvp=true
(PvP是否开启,就是玩家直接能不能打架)
进入插件目录(正版验证是开的服务器请忽略此步骤)
a05777@ser-2204:~/mcser$ cd plugins/
a05777@ser-2204:~/mcser/plugins$
安装AuthMe
wget https://github.com/AuthMe/AuthMeReloaded/releases/download/5.6.0/AuthMe-5.6.0.jar
安装screen&最后
sudo apt update && sudo apt install screen -y
进入你的服务器文件夹,输入
screen -S <你喜欢的名字>
我这里使用
screen -S mcser
(注意大小写)
输入启动指令
在确认服务器运行正常后,就可以使用ctrl + ad快捷键将服务器挂到后台运行了
在你的游戏客户端里点击“多人游戏”,“添加服务器”,输入你服务器的IP和端口,格式是
xxx.xxx.xxx.xxx:12345
然后你就可以将你服务器的地址分享给你的朋友了,不要将地址发到网上,除非你确信你有应对DDoS的能力
不会问我
[email protected]
本文章使用CC BY-NC-SA 4.0许可证 https://creativecommons.org/licenses/by-nc-sa/4.0/