吴旭华 发表于 2024-6-21 22:27:48

保姆级教程:搭建本身的 Minecraft 服务器,跟好友一起玩!

Minecraft(我的天下)应该算是最有名的沙盒游戏之一了。它最初于 2009 年发布,让玩家可以在一个由方块构成的3D生成天下中建造、探索、制作和生存。制止 2022 年初,它已成为史上销量最高的游戏(如今还是不是,暂时还没求证,如果你知道的话,请在评论区告诉我)。
在本教程中,我将带你将创建本身的《我的天下》(Minecraft)服务器,让你可以和你的朋友在同一个天下中一起建造、探索。具体来讲呢,就是你将要安装运行《我的天下》(Minecraft)所需的软件包,配置服务器运行,然后部署游戏。
不消担心,这个教程非常简单,只要你跟着做,即便不熟悉技能也能搞定!因为要输入什么命令行,我都已经给写在里面了,直接使用就行。固然,也科普了一下部门命令行的原理,授人以渔。
注意,本教程使用的是 Minecraft 的 Java 版本。如果你通过 Microsoft 应用市肆购买的 Minecraft 版本,那么你将无法基于本教程毗连到此服务器。在 PlayStation 4、Xbox One 或 Nintendo Switch 等游戏机上购买的 Minecraft 的大多数版本也是 Microsoft 版本的。这些游戏机也无法毗连到本教程中构建的服务器。你可以点击这里从官方获取 Minecraft的Java版本。
另外,如果你没有耐烦本身操纵,你还可以使用 DigitalOcean 的“一键式Minecraft:Java 版服务器”作为另一个安装途径。这个方式会比教程更快,一键安装。
让我们开始吧!
准备工作

为了你能顺遂跟上本教程的步骤,你需要这些:

[*]一台装有最新 Ubuntu 的服务器,一个具有 sudo 权限的非 root 用户,并启用了 SSH。你可以在注册 DigitalOcean 云服务之后,阅读这份指南来初始化你的服务器并完成这些步骤。Minecraft 可能会占用大量资源,因此在选择服务器巨细时请牢记这一点。如果您使用的是 DigitalOcean 云服务并需要更多资源,可以随时调整 Droplet 的巨细以添加更多 CPU 和 RAM。
[*]在本地 Mac、Windows 或 Linux 盘算机上安装 Minecraft Java Edition 副本。
好了,接下来就是构建本身的 Minecraft 服务器的步骤,也是本文后续要讲的:


[*]安装须要的软件包并配置防火墙
[*]下载最新版本的 Minecraft
[*]配置和运行 Minecraft 服务器
[*]如何保持 Minecraft 服务器运行
[*]从 Minecraft 客户端毗连到你的服务器
第一步:安装须要的软件包并配置防火墙

在刚刚说的准备工作中,你应该已经初始化你的服务器了。接下来,第一步是安装 Java;你需要它来运行 Minecraft。
首先,如果你使用的是 DigitalOcean 的服务,那么在登录本身的账号之后,点击界面中的 Console,就可以进入服务器的终端,然后输入接下来本文给出的命令行即可。如果你是使用别的服务器,那么请按照平时的操纵流程来输入命令行。

https://img-blog.csdnimg.cn/img_convert/6142da5b6d47360b6a61f98681cb9741.webp?x-oss-process=image/format,png
默认情况下,Ubuntu 22.04 提供的 Java 版本不足以运行最新版本的 Minecraft。所幸,有第三方继承为较旧的 Ubuntu 版本构建更新的 Java 软件包,你可以通过将他们的 PPA(个人软件包存档)添加到本身的软件包源列表中来进行安装。你可以使用以下命令来做到这一点:
bash
复制代码
sudo add-apt-repository ppa:openjdk-r/ppa
接下来,更新软件包:
sql
复制代码
sudo apt update
屏幕出现提示确认的时候,按 Y 键。如果提示重新启动任何服务的时候,按 ENTER 接受默认的选项并继承。
最后,安装 Java 的 OpenJDK 17 Headless JRE。这是一个最小版本的 Java,移除了对 GUI 应用程序的支持。这使得它非常适合在服务器上运行 Java 应用程序:
复制代码
sudo apt install openjdk-17-jre-headless
你还需要一个名为 screen 的软件来创建可分离(detachable)服务器 session。screen 答应用户创建一个终端session并与其分离,同时保存在该会话上启动的进程的运行状态。什么意思呢?简单来讲就是在使用服务器长途跑程序时,偶尔会遇到这样的问题:跑了很久,却突然断开毗连了,一夜回到解放前,大概退出窗口重新进入时看不到代码运行界面了。screen 就是办理这个问题的。
这黑白常重要的,因为如果你启动服务器然后关闭终端,这将制止会话并制止您的服务器。如今安装screen:
复制代码
sudo apt install screen
如今我们已经安装了须要的软件包,我们需要启用防火墙以答应流量进入我们的 Minecraft 服务器。如果你是按照本文开始超链那篇初始服务器设置来操纵的,那么在设置中,你只答应 SSH 流量。如今,你需要答应通过端口 25565 进入的流量,这是 Minecraft 用于答应毗连的默认端口。在某些情况下,ufw 会使用定名的流量规则,例如 SSH,它默认始终使用端口 22,但在像这种情况这样不太常见的情况下,我们将手动指定端口号。通过运行以下命令添加须要的防火墙规则:
复制代码
sudo ufw allow 25565
如今你已经安装了 Java,并且配置了防火墙,接下来,从 Minecraft 官网下载 Minecraft 服务器应用程序。
第二步:下载最新版本的 Minecraft

如今,我们来下载 Minecraft 服务器的最新版本。我们可以通过访问 Minecraft的官方网站并复制“Download minecraft_server.X.X.X.jar” 的链接来完成此操纵,此中的 X 表示服务器的最新版本。
以使用 wget 命令和复制的链接,将服务器应用程序下载到你的服务器上:
bash
复制代码
wget https://launcher.mojang.com/v1/objects/c8f83c5655308435b3dcf03c06d9fe8740a77469/server.jar
服务器应用下载后,名字是 server.jar。如果你需要管理 Minecraft 的版本,大概想要升级你的 Minecraft 服务器,可以将下载的 server.jar 重定名为 minecraft_server_1.18.2.jar,用下面这行命令就行:
bash
复制代码
mv server.jar minecraft_server_1.18.2.jar
如果你想下载 Minecraft 的旧版本,可以在 mcversions.net 找到存档。
第三步:配置和运行 Minecraft 服务器

首先,通过运行 screen 命令来启动一个 screen 会话:
复制代码
screen
看到弹出的界面后,按空格键。screen 将提供一个像平常一样的终端会话框。这个会话如今是可以分离的,这意味着你可以在这里启动一个命令并让它连续运行。

https://img-blog.csdnimg.cn/img_convert/5080d1946062635cd80203c151f4835b.webp?x-oss-process=image/format,png
https://img-home.csdnimg.cn/images/20230724024159.png?origin_url=https%3A%2F%2Fjuejin.cn%2Fpost%2F7351581179017805858&pos_id=OJE5IJ0v
如今,你可以进行初始配置。当下一个命令抛出错误时,请不要惊慌。Minecraft 之所以这样筹划安装过程,是为了让用户必须首先同意公司的允许协议。接下来,实验这段操纵:
复制代码
java -Xms1024M -Xmx1024M -jar minecraft_server_1.18.2.jar nogui
上面这一行命令有许多参数,都是什么意思呢?我们来解读一下:


[*]Xms1024M - 配置服务器,以 1024MB 或 1GB 的 RAM 开始运行。如果你希望服务器以更多的 RAM 开始运行,可以提高此限制。M 表示兆字节,G 表示什么就不消表明了吧,同样原理的。例如:Xms2G 意思是配置以 2GB 的 RAM 来启动服务器。
[*]Xmx1024M - 这将配置服务器最多使用 1024M 的 RAM。如果你希望服务器以更大的规模运行,答应更多的玩家一起玩,大概你感觉服务器运行迟钝,可以提高这个限制。
[*]jar - 此标志指定要运行的服务器 jar 文件。
[*]nogui - 这告诉服务器不要启动图形用户界面(GUI),因为这是一个服务器,没有图形用户界面。
你第一次运行这个命令(通常用于启动您的服务器)时,将收到以下输出:
vbnet
复制代码
Output : Failed to load properties from file: server.properties : Failed to load eula.txt : You need to agree to the EULA in order to run the server. Go to eula.txt for more info.
这些错误是因为服务器找不到实验所需的两个须要文件而产生的:eula.txt中的EULA(最终用户允许协议)和配置文件 server.properties。由于服务器找不到这些文件,它会在当前的工作目次中创建它们。Minecraft故意这样做是为了确保用户已经阅读并同意其 EULA(最终用户允许协议)。
在文本编辑器中打开 eula.txt,这里我们使用的编辑器是 nano,所以命令是:
复制代码
nano eula.txt
在这个文件中,你将看到一个指向Minecraft EULA的链接。复制这个URL:
ini
复制代码
#By changing the setting below to TRUE you are indicating your agreement to our EULA (https://account.mojang.com/documents/minecraft_eula). #Tue Mar 24 22:05:31 UTC 2020 eula=false
在网页浏览器中打开该 URL,并阅读协议。然后返回文本编辑器,找到 eula.txt 中的最后一行。在这里,将 eula=false 更改为 eula=true。然后,保存并关闭文件。如果你用的是 nano,就按“Ctrl+X”退出,然后在提示保存时按“Y”,然后按Enter。
如今你已经接受了 EULA,可以根据本身的要求配置服务器。
在当前的工作目次中,你还会找到新创建的 server.properties 文件。这个文件包罗 Minecraft 服务器的所有配置选项。你可以在官方 Minecraft Wiki上找到有关所有服务器属性的详细列表。你可以在启动服务器之前,按照个人喜欢修改这些设置。本教程将介绍一些基本设置:
vbscript
复制代码
nano server.properties
输入这个命令之后,你就会打开这个文件,然后你会看到:
    ini复制代码
#Minecraft server properties #Thu Apr 30 23:42:29 UTC 2020 spawn-protection=16 max-tick-time=60000 query.port=25565 generator-settings= force-gamemode=false allow-nether=true enforce-whitelist=false gamemode=survival broadcast-console-to-ops=true enable-query=false player-idle-timeout=0 difficulty=easy spawn-monsters=true broadcast-rcon-to-ops=true op-permission-level=4 pvp=true snooper-enabled=true level-type=default hardcore=false enable-command-block=false max-players=20 network-compression-threshold=256 resource-pack-sha1= max-world-size=29999984 function-permission-level=2 rcon.port=25575 server-port=25565 server-ip= spawn-npcs=true allow-flight=false level-name=world view-distance=10 resource-pack= spawn-animals=true white-list=false rcon.password= generate-structures=true online-mode=true max-build-height=256 level-seed= prevent-proxy-connections=false use-native-transport=true motd=A Minecraft Server enable-rcon=false   让我们看一下列表中比力重要的属性:


[*]difficulty(默认为 easy)- 这会设置游戏的难度,好比造成多少伤害以及元素如何影响玩家。选项有peaceful(平静)、easy(简单)、normal(普通)和hard(困难)。
[*]gamemode(默认为survival)- 这会设置游戏模式。选项有survival(生存)、creative(创造)、adventure(冒险)和spectator(观看)。
[*]level-name(默认为world)- 这会设置将在客户端中表现的服务器名称。特殊字符(如撇号)可能需要在前面加上反斜杠。这被称为转义字符,当特殊字符在上下文中可能无法正确解析时,这是一种常见做法。
[*]motd(默认为A Minecraft Server)- 在Minecraft客户端的服务器列表中表现的消息。
[*]pvp(默认为true)- 启用玩家对玩家(Player versus Player)战斗。如果设置为true,玩家将能够进行战斗并相互造成伤害。
设置好你想要的选项后,保存并关闭文件。
如今你可以成功启动服务器了。
像上次一样,我们用 1024 M 的 RAM 来启动您的服务器。这次,你还应该让Minecraft在须要时能够使用 4G 的 RAM。注意,你可以调整这个数字。我们如今输入命令:
复制代码
java -Xms1024M -Xmx4G -jar minecraft_server_1.18.2.jar nogui
稍等半晌,等它进行初始化。很快,新Minecraft服务器将开始给出雷同于以下的输出:
arduino
复制代码
Output : Starting minecraft server version 1.18.2 : Loading properties : Default game type: SURVIVAL : Generating keypair : Starting minecraft server on *:25565
当服务器启动并运行后,你会看到:
arduino
复制代码
Output : Done (30.762s)! For help, type "help"
你的服务器如今正在运行,并且你已经看到了服务器管理员控制面板。尝试输入“help”:
bash
复制代码
help
系统会输出:
ini
复制代码
Output : /advancement (grant|revoke) : /ban <targets> [<reason>] : /ban-ip <target> [<reason>] : /banlist ...
从这个终端,您可以运行管理员命令并控制您的Minecraft服务器。如今,您将学习如何使用screen在注销终端后保持Minecraft服务器的运行。然后,您可以毗连到您的Minecraft客户端并开始新的游戏。
第四步:如何让 Minecraft服务器运行起来

如今你的服务器已经启动了。如果你希望纵然在断开 SSH 会话后,它仍能继承运行。由于之前已经使用了screen,因此可以通过按 Ctrl + A + D 来断开与这个会话的毗连。按下之后,就会返回到原始shell中:
ruby
复制代码
ubuntu@minecraft-2204:~$ screen
运行下面这个命令,可以看到所有的 sceen 会话:
复制代码
screen -list
你将得到会话 ID,你可以通过这个 ID 来恢复那个会话:
csharp
复制代码
There is a screen on: 3626.pts-0.minecraft-2204 (03/02/22 22:56:33) (Detached) 1 Socket in /run/screen/S-root.
要恢复你的会话,向 screen 命令通报 -r 加上你的会话ID:
yaml
复制代码
screen -r 3626
当你准备再次从终端注销(log out)时,请确保使用 Ctrl + A + D 从会话中分离,然后再注销。
第五步:从 Minecraft 客户端毗连到你的服务器

如今你的服务器已经启动并运行了,让我们通过 Minecraft 客户端来毗连到它。然后你就可以开始玩了!
启动你的 Minecraft Java 版的副本,并在菜单中选择多人游戏。

https://img-blog.csdnimg.cn/img_convert/ebb15dbc565776f53de483bc9848134c.webp?x-oss-process=image/format,png
https://img-home.csdnimg.cn/images/20230724024159.png?origin_url=https%3A%2F%2Fjuejin.cn%2Fpost%2F7351581179017805858&pos_id=yUiDEaRL
然后你需要选择一个服务器,点击“Add Server”按钮

https://img-blog.csdnimg.cn/img_convert/df1ab5d9e927a9ce4eccae2160de1087.webp?x-oss-process=image/format,png
https://img-home.csdnimg.cn/images/20230724024159.png?origin_url=https%3A%2F%2Fjuejin.cn%2Fpost%2F7351581179017805858&pos_id=DOELLLXJ
在出现的“Edit Server Info”窗口中,给你的服务器起一个名字,并输入你的服务器 IP 地址。这个 IP 地址与你通过 SSH 毗连时使用的 IP 地址相同。

https://img-blog.csdnimg.cn/img_convert/05cea636fb8fde3043262f430dd99f04.webp?x-oss-process=image/format,png
https://img-home.csdnimg.cn/images/20230724024159.png?origin_url=https%3A%2F%2Fjuejin.cn%2Fpost%2F7351581179017805858&pos_id=y9sQBJpj
输入了服务器名称和IP地址后,你将会返回到多人游戏界面,你的服务器如今将会出如今屏幕上。

https://img-blog.csdnimg.cn/img_convert/a4203d67dff03617f9d08a2154bce418.webp?x-oss-process=image/format,png
https://img-home.csdnimg.cn/images/20230724024159.png?origin_url=https%3A%2F%2Fjuejin.cn%2Fpost%2F7351581179017805858&pos_id=Z4hj1c1i
之后再登录的时候,你的服务器都会表现在这里了。点击这个服务器,然后点击“Join Server”。

https://img-blog.csdnimg.cn/img_convert/d94ed65de6b3dbef9f5bab7f72b0cf52.webp?x-oss-process=image/format,png
https://img-home.csdnimg.cn/images/20230724024159.png?origin_url=https%3A%2F%2Fjuejin.cn%2Fpost%2F7351581179017805858&pos_id=SpKgTjvZ
你就进入到你的服务器了,可以开始玩了!
小结

如今,你已经在 Ubuntu 22.04 上搭建了一个 Minecraft 服务器,你可以和所有的朋友们一起在上面玩游戏了!
祝各人玩的愉快!

免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。
页: [1]
查看完整版本: 保姆级教程:搭建本身的 Minecraft 服务器,跟好友一起玩!