跳至正文

Ubuntu 搭建 Minecraft Java 原版服务器

前言

Ubuntu 没有强制版本需求,长期运行可以使用以下 LTS 版本即长期支持版本(18.04 LTS,20.04 LTS,22.04 LTS)。

Java 版本

Java 17 LTS 版本适用于 Minecraft 1.17-1.19.4 版本,Minecraft 1.17-1.17.1 默认 Java 版本是 16,Java 17 LTS 向下兼容。

Java 8 LTS 版本适用于 Minecraft 1.12-1.16.5 版本,Java 11 LTS 版本向下兼容。

*本文记录自己在系统 Ubuntu 20.04 LTS 下,使用 Azul Zulu JDK 17 LTS 版本安装 Minecraft 1.19.4 原版服务器。(需要对 Linux 系统有初步认识与操作,本文不提供从开始的手把手教程)

安装 JDK 17 LTS

  1. 导入Azul的公钥:
Batch
				sudo apt install -y gnupg ca-certificates curl
curl -s https://repos.azul.com/azul-repo.key | sudo gpg --dearmor -o /usr/share/keyrings/azul.gpg
echo "deb [signed-by=/usr/share/keyrings/azul.gpg] https://repos.azul.com/zulu/deb stable main" | sudo tee /etc/apt/sources.list.d/zulu.list
			

2. 更新软件包信息

Batch
				sudo apt update
			

3. 安装 Azul Zulu 软件包(下面将安装 JDK 17 版本,需要其他版本可以按照以下格式自行更换 sudo apt install zulu<jdk-version>-jdk)

Batch
				sudo apt install -y zulu17-jdk
			

4. 检查 Java 是否成功安装

Batch
				java -version
			

成功安装即可返回以下信息

				openjdk version "17.0.7" 2023-04-18 LTS
OpenJDK Runtime Environment Zulu17.42+19-CA (build 17.0.7+7-LTS)
OpenJDK 64-Bit Server VM Zulu17.42+19-CA (build 17.0.7+7-LTS, mixed mode, sharing)
			

如有更多有关 Azul Zulu JDK 的安装问题,可以前往网址 https://docs.azul.com/core/zulu-openjdk/install/debian 自行查看

下载 Minecraft Java 原版服务器

可以自行前往网址 https://www.minecraft.net/en-us/download/server 下载 jar 文件并上传到服务器,或者使用以下命令创建新文件夹并直接下载到服务器上。

Batch
				mkdir mc && cd mc && wget https://piston-data.mojang.com/v1/objects/8f3112a1049751cc472ec13e397eade5336ca7ae/server.jar 
			

初次启动 Minecraft 服务器

上述下载步骤完成后,首先初次运行文件夹中的 server.jar

Batch
				java -jar server.jar
			

初次运行过后,文件夹中会出现 eula.txt、server.properties两个文件,修改 eula.txt 将 false 改为 true 并保存,即同意 Minecraft 的最终用户许可协议。server.properties 可以根据开服需求去修改游戏模式,游戏难度,游戏端口以及其他设置。

启动 Minecraft 服务器

本文所用服务器为 4GB 内存,实际可用 3.7GB。开服内存使用建议在 2-2.5 GB之间,需要预留一定量给系统,避免出现问题。

Batch
				java -Xmx2048M -Xms2048M -jar server.jar nogui
			

使用 Aikar’s flag 优化 Minecraft 服务器启动参数。(更多信息可以查看 https://docs.papermc.io/paper/aikars-flags

Batch
				java -Xms2G -Xmx2G -XX:+UseG1GC -XX:+ParallelRefProcEnabled -XX:MaxGCPauseMillis=100 -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 server.jar --nogui
			

发表评论须遵守中华人民共和国相关法律法规。违规评论将会被删除。

Comments must subject to the relevant laws and regulations of the People’s Republic of China. Offending comments will be deleted.

发表回复

您的电子邮箱地址不会被公开。 必填项已用 * 标注

此站点使用Akismet来减少垃圾评论。了解我们如何处理您的评论数据