清华主页 - 清华新闻 - 综合时讯 - 正文

如何在 Ubuntu 上安装 Minecraft 服务器 [Java 和 Bedrock]

简介

许多玩家都想创建并托管自己的 Minecraft 服务器来建立自己的社区,但这可能很繁琐,因为它涉及到一些技术性的任务。因此,我创建了这个全面的分步教程,你将学习如何在 Ubuntu 上安装 Minecraft:Java 和 Bedrock 版本。我们还将介绍如何托管 Minecraft 服务器、服务器要求以及跨平台兼容性。

本教程的目标是手把手教你如何在 Linux 服务器上安装 Minecraft 服务器。

安装和配置步骤

1. 安装 Minecraft on Ubuntu: Java edition

Minecraft Java 版是最先创建的版本,允许 Windows、Mac 和 Linux 之间的跨平台游戏。第一部分将展示如何在 Ubuntu 上安装 Minecraft 服务器:Java 版,包括配置。

第一步:安装 Java 运行时

我们需要安装 Java 运行时来运行 Minecraft 服务器。

使用以下命令安装 Java JRE:

sudoapt-getupdatesudoaptinstalldefault-jre-headless

使用以下命令检查是否已安装 Java jre:

java-version

你应该看到类似的内容:

openjdk version "17.0.9"2023-10-17OpenJDK Runtime Environment (build 17.0.9+9-Debian-1deb12u1)OpenJDK 64-Bit Server VM (build 17.0.9+9-Debian-1deb12u1, mixed mode, sharing)

第二步:创建一个专用的系统用户

由于 Minecraft 服务器将公开访问,因此你应该特别注意服务器的安全性。例如,服务器不应由 root 或任何具有特权的用户运行。

创建一个用户 minecraft,我们将使用它来运行服务器。

要创建非特权用户,请使用以下命令:

sudouseradd-r-U-d/usr/local/games/minecraft_server/ -s/usr/sbin/nologin minecraft

然后创建存储服务器可执行文件的文件夹。

使用以下命令创建文件夹:

sudomkdir-p/usr/local/games/minecraft_server/Java

现在,允许用户 minecraft访问新创建的文件夹:

sudochown-Rminecraft: /usr/local/games/minecraft_server/

第三步:下载 Minecraft 服务器 Java 版

我们现在可以切换到用户 minecraft

sudosu- minecraft -s/bin/bash

让我们在 Minecraft 服务器文件夹中工作:

cd/usr/local/games/minecraft_server/Java

要下载服务器,请使用以下命令:

wgethttps://piston-data.mojang.com/v1/objects/8dd1a28015f51b1803213892b50b7b4fc76e594d/server.jar

你可以在 https://www.minecraft.net/en-us/download/server 上找到最新的 Minecraft Java 服务器。

我们现在在文件夹中有一个名为 server.jar的文件。

第四步:初始化设置

现在让我们运行服务器:

java-Xmx1024M-Xms1024M-jarserver.jar nogui

如果你遇到以下错误:ubuntu Error: LinkageError occurred while loading main class net.minecraft.bundler.Main Java.lang.UnsupportedClassVersionError: net/minecraft/bundler/Main has been compiled by a more recent version of the Java Runtime (class file version 61.0); this version of the Java Runtime only recognizes class file versions up to 55.0,

你可以使用 apt-get 并通过指定 JRE 版本来安装更新的 JRE 版本,方法是执行 sudo apt install openjdk-21-jre-headless,然后重新启动服务器。

服务器将以异常退出,这是预期的:

[23:29:01][ServerMain/ERROR]: Failed to load properties from file: server.propertiesjava.nio.file.NoSuchFileException: server.properties	at sun.nio.fs.UnixException.translateToIOException(UnixException.java:92)~[?:?]at sun.nio.fs.UnixException.rethrowAsIOException(UnixException.java:106)~[?:?]at sun.nio.fs.UnixException.rethrowAsIOException(UnixException.java:111)~[?:?]at sun.nio.fs.UnixFileSystemProvider.newByteChannel(UnixFileSystemProvider.java:218)~[?:?]at java.nio.file.Files.newByteChannel(Files.java:380)~[?:?]at java.nio.file.Files.newByteChannel(Files.java:432)~[?:?]at java.nio.file.spi.FileSystemProvider.newInputStream(FileSystemProvider.java:422)~[?:?]at java.nio.file.Files.newInputStream(Files.java:160)~[?:?]at ame.b(SourceFile:62)~[server-1.20.4.jar:?]at amb.a(SourceFile:138)~[server-1.20.4.jar:?]at amc.<init>(SourceFile:12)~[server-1.20.4.jar:?]at net.minecraft.server.Main.main(SourceFile:112)~[server-1.20.4.jar:?]at net.minecraft.bundler.Main.lambda$run$0(Main.java:54)~[?:?]at java.lang.Thread.run(Thread.java:840)~[?:?][23:29:01][ServerMain/WARN]: Failed to load eula.txt[23:29:01][ServerMain/INFO]: You need to agree to the EULA inorder to run the server. Go to eula.txt formoreinfo.

此过程还在文件夹中创建了其他文件:

$ lseula.txt  libraries  logs  server.jar  server.properties  versions

按照异常,我们将通过将 EULA.txt中的 false替换为 true来接受 Minecraft 最终用户许可协议 (EULA):

sed-i's/\\bfalse\\b/TRUE/'eula.txt

现在使用 java -Xmx1024M -Xms1024M -jar server.jar nogui再次运行服务器:

$ java-Xmx1024M-Xms1024M-jarserver.jar noguiStarting net.minecraft.server.Main[23:37:36][ServerMain/INFO]: Environment: Environment[sessionHost=[https://sessionserver.mojang.com](https://sessionserver.mojang.com/), servicesHost=https://api.minecraftservices.com, name=PROD][23:37:37][ServerMain/INFO]: No existing world data, creating new world[23:37:38][ServerMain/INFO]: Loaded 7recipes[23:37:38][ServerMain/INFO]: Loaded 1271advancements[23:37:38][Server thread/INFO]: Starting minecraft server version 1.20.4[23:37:38][Server thread/INFO]: Loading properties[23:37:38][Server thread/INFO]: Default game type: SURVIVAL[23:37:38][Server thread/INFO]: Generating keypair[23:37:38][Server thread/INFO]: Starting Minecraft server on *:25565[23:37:38][Server thread/INFO]: Using epoll channel type[23:37:38][Server thread/INFO]: Preparing level "world"[23:37:42][Server thread/INFO]: Preparing start region fordimension minecraft:overworld[23:37:43][Worker-Main-4/INFO]: Preparing spawn area: 0%[23:37:43][Worker-Main-2/INFO]: Preparing spawn area: 0%[23:37:43][Worker-Main-6/INFO]: Preparing spawn area: 0%[23:37:44][Worker-Main-7/INFO]: Preparing spawn area: 0%[23:37:44][Worker-Main-3/INFO]: Preparing spawn area: 1%[23:37:45][Worker-Main-5/INFO]: Preparing spawn area: 2%[23:37:45][Worker-Main-5/INFO]: Preparing spawn area: 3%[23:37:46][Worker-Main-6/INFO]: Preparing spawn area: 4%[23:37:46][Worker-Main-1/INFO]: Preparing spawn area: 5%[23:37:47][Worker-Main-4/INFO]: Preparing spawn area: 9%[23:37:47][Worker-Main-2/INFO]: Preparing spawn area: 10%[23:37:48][Worker-Main-6/INFO]: Preparing spawn area: 13%[23:37:48][Worker-Main-3/INFO]: Preparing spawn area: 15%[23:37:49][Worker-Main-5/INFO]: Preparing spawn area: 17%[23:37:49][Worker-Main-2/INFO]: Preparing spawn area: 20%[23:37:50][Worker-Main-2/INFO]: Preparing spawn area: 23%[23:37:50][Worker-Main-4/INFO]: Preparing spawn area: 25%[23:37:51][Worker-Main-7/INFO]: Preparing spawn area: 29%[23:37:51][Worker-Main-4/INFO]: Preparing spawn area: 32%[23:37:52][Worker-Main-4/INFO]: Preparing spawn area: 34%[23:37:52][Worker-Main-3/INFO]: Preparing spawn area: 37%[23:37:53][Worker-Main-5/INFO]: Preparing spawn area: 40%[23:37:53][Worker-Main-4/INFO]: Preparing spawn area: 43%[23:37:54][Worker-Main-7/INFO]: Preparing spawn area: 46%[23:37:54][Worker-Main-4/INFO]: Preparing spawn area: 48%[23:37:55][Worker-Main-5/INFO]: Preparing spawn area: 53%[23:37:55][Worker-Main-5/INFO]: Preparing spawn area: 55%[23:37:56][Worker-Main-7/INFO]: Preparing spawn area: 58%[23:37:56][Worker-Main-7/INFO]: Preparing spawn area: 60%[23:37:57][Worker-Main-6/INFO]: Preparing spawn area: 64%[23:37:57][Worker-Main-6/INFO]: Preparing spawn area: 68%[23:37:58][Worker-Main-2/INFO]: Preparing spawn area: 70%[23:37:58][Worker-Main-1/INFO]: Preparing spawn area: 74%[23:37:59][Worker-Main-5/INFO]: Preparing spawn area: 77%[23:37:59][Worker-Main-3/INFO]: Preparing spawn area: 81%[23:38:00][Worker-Main-1/INFO]: Preparing spawn area: 84%[23:38:00][Worker-Main-3/INFO]: Preparing spawn area: 87%[23:38:01][Worker-Main-3/INFO]: Preparing spawn area: 90%[23:38:01][Worker-Main-6/INFO]: Preparing spawn area: 94%[23:38:02][Worker-Main-6/INFO]: Preparing spawn area: 97%[23:38:02][Server thread/INFO]: Time elapsed: 19828ms[23:38:02][Server thread/INFO]: Done (23.425s)!For help, type"help"

我们现在有一个终端,可以在其中通过键入命令来管理 Minecraft 服务器。
键入 Ctrl+C以停止服务器。

请注意,我们正在使用 -nogui开关运行服务器,因为它在服务器环境中更可取。你可以删除此开关以使用服务器 GUI。

第五步:在 screen 中启动 Minecraft Java 服务器

现在,安装 screen,它是一个终端多路复用器应用程序。它将允许我们在需要时分离和重新连接到我们的 Minecraft 服务器。这也将允许你退出终端,同时保持 Minecraft 服务器的运行。

运行以下命令以安装 screen

sudoaptinstallscreen-y

安装 screen后,我们可以在分离的 screen 终端中启动服务器:

screen-Smc_Java_server -dmjava-Xmx1024M-Xms1024M-jarserver.jar nogui

请随意调整内存参数 Xmx 和 Xms 以适合你的喜好 - 连接到你的服务器的用户越多,你需要为 Minecraft 服务器分配的 RAM 就越多。

第六步:加入 Minecraft Java 服务器

你现在可以添加一个新的 Minecraft 服务器。启动游戏并转到 多人游戏。然后使用其 IP 地址添加你的服务器:

在这里插入图片描述

菜单应指示服务器可访问(绿色信号栏):

在这里插入图片描述

单击加入,你现在就在自己的 Minecraft 世界中!

在这里插入图片描述

2. 安装 Minecraft on Ubuntu: Bedrock edition

虽然 Minecraft Bedrock 版仅在 Windows 10 和 11 以及游戏机上运行,但你可以在 Ubuntu 上安装其服务器应用程序。请按照以下步骤进行操作。

第一步:安装 Minecraft Bedrock 服务器

/tmp文件夹中下载 Bedrock 服务器:

cd/tmpwgethttps://minecraft.azureedge.net/bin-linux/bedrock-server-1.20.51.01.zip

你可以在 Minecraft 网站 上找到最新 Minecraft Bedrock 服务器的链接:

在这里插入图片描述

右键单击 下载按钮,然后单击 复制链接

我们现在可以在 /usr/local/games/minecraft_server/bedrock中提取文件:

apt-getinstallunzipsudounzip-d/usr/local/games/minecraft_server/bedrock bedrock-server-1.20.51.01.zip

现在让我们修复权限:

sudochown-Rminecraft: /usr/local/games/minecraft_server/

第二步:启动 Minecraft Bedrock 服务器

我们现在切换到我们的 Minecraft 用户:

sudosu- minecraft -s/bin/bash

我们需要进入 bedrock 文件夹:

cdbedrock

使用 nano创建一个名为 launch_mc_bedrock_server.sh的文件,并将以下内容粘贴到其中:

#!/bin/bashLD_LIBRARY_PATH=. ./bedrock_server

使该文件可执行:

chmod+x launch_mc_bedrock_server.sh

我们终于可以在 screen中启动我们的 Bedrock 服务器,以保持服务器运行:

screen-Smc_bedrock_server ./launch_mc_bedrock_server.sh

你应该看到类似于下面的输出:

NO LOG FILE!- setting up server logging...[2024-01-24 10:09:28:218 INFO]Starting Server[2024-01-24 10:09:28:218 INFO]Version: 1.20.51.01[2024-01-24 10:09:28:218 INFO]Session ID: 5405dc57-73b9-4c43-b5c9-4cc6869feab4[2024-01-24 10:09:28:218 INFO]Build ID: 20414424[2024-01-24 10:09:28:218 INFO]Branch: r/20_u5[2024-01-24 10:09:28:218 INFO]Commit ID: 62ad6027dc354090f841dd996363408bb43fdfd4[2024-01-24 10:09:28:218 INFO]Configuration: Publish[2024-01-24 10:09:28:219 INFO]Level Name: Bedrock level[2024-01-24 10:09:28:220 INFO]No CDN config filefound fordedicated server[2024-01-24 10:09:28:220 INFO]Game mode: 0Survival[2024-01-24 10:09:28:220 INFO]Difficulty: 1EASY[2024-01-24 10:09:28:221 INFO]Content logging to console is enabled.[2024-01-24 10:09:28:543 INFO]Opening level 'worlds/Bedrock level/db'[2024-01-24 10:09:29:080 INFO]IPv4 supported, port: 19132: Used forgameplay and LAN discovery[2024-01-24 10:09:29:080 INFO]IPv6 supported, port: 19133: Used forgameplay[2024-01-24 10:09:29:086 INFO]Server started.[2024-01-24 10:09:29:086 INFO]======================TELEMETRY MESSAGE ======================[2024-01-24 10:09:29:086 INFO]Server Telemetry is currently not enabled.[2024-01-24 10:09:29:086 INFO]Enabling this telemetry helps us improve the game.[2024-01-24 10:09:29:086 INFO][2024-01-24 10:09:29:086 INFO]To enablethis feature, addthe line 'emit-server-telemetry=true'[2024-01-24 10:09:29:086 INFO]to the server.properties fileinthe handheld/src-server directory[2024-01-24 10:09:29:086 INFO]============================================================

第三步:加入 Minecraft Bedrock 服务器

现在我们的服务器正在运行,你可以启动游戏并通过单击 服务器部分中的 添加服务器按钮来加入 Minecraft 服务器。

在这里插入图片描述

这将在 Minecraft Bedrock 中生成一个新的世界!

在这里插入图片描述

结尾

在本教程中,我向你展示了如何在 Ubuntu 上安装 Minecraft:Java 和 Bedrock 版本。你已经学习了在 Ubuntu 上设置和运行你自己的 Minecraft 服务器的基础知识,以及跨平台兼容性、如何托管 Minecraft 服务器和一般 Minecraft 服务器要求。了解这些可以帮助你选择最适合你的服务器版本!

我的博客:https://blog.ivwv.site

2025-06-24 12:09:53

相关新闻

清华大学新闻中心版权所有,清华大学新闻网编辑部维护,电子信箱: news@tsinghua.edu.cn
Copyright 2001-2020 news.tsinghua.edu.cn. All rights reserved.