Ubuntu 22.04 Minecraft 服务器设置
拥有自己的 Minecraft 服务器的好处在于,您可以完全掌控自己的游戏体验。您可以选择服务器上使用的设置,您可以使用(或滥用)您的管理权力来获得优势,并将这些权力授予您的游戏伙伴。您可能想为您和您的朋友创建一个私人服务器,或者将其公开以供所有人访问。
Ubuntu 22.04 Jammy Jellyfish 是托管 Minecraft 服务器的首选,因为 Linux 以其运行服务器时的稳定性而闻名,而 Ubuntu 则以其易用性而闻名。请按照下面的步骤操作,我们将引导您完成启动并运行 Minecraft 服务器的步骤。
如果您还想知道如何在 Ubuntu 22.04 上玩 Minecraft,我们也可以为您提供帮助。只需查看我们关于如何在 Ubuntu 22.04 Jammy Jellyfish Linux 上安装 Minecraft 的其他指南。
在本教程中您将学习:
安装先决条件
为了运行 Minecraft 服务器,我们需要一些软件包,所以让我们从安装它们开始。打开命令行终端并键入以下两个命令:
$ sudo apt update
$ sudo apt install wget screen openjdk-18-jdk nmap
我们正在安装的每个包的说明:
wget
将用于下载 Minecraft 服务器文件screen
用于在后台运行 Minecraft 服务器openjdk-18-jdk
是 Minecraft 运行所需的 Java 包nmap
稍后将用于基本故障排除目的
创建一个 Minecraft 用户
最佳实践是让 Minecraft 服务器在其自己的专用帐户下运行,而不是使用 root 或其他帐户。使用以下命令在 Ubuntu 中创建一个新帐户:
$ sudo useradd -m -r -d /opt/minecraft minecraft
安装我的世界服务器
可以在单个主机上运行 Minecraft 服务器的多个实例。如果您想要运行多个服务器,我们将在本文后面向您展示如何执行此操作。我们运行的每个服务器实例都需要在
/opt/minecraft
目录下有自己的目录。对于第一个服务器实例,我们将其称为“survival”并创建以下目录:$ sudo mkdir /opt/minecraft/survival
现在,我们需要使用
wget
下载 Minecraft 服务器 Java 文件。由于 Minecraft 会定期更新,因此您需要访问 Minecraft 官方下载页面并将链接复制到.jar
文件,以确保下载最新版本。使用以下命令下载文件,并将本示例中的链接替换为当前可用的链接:
$ sudo wget -O /opt/minecraft/survival/minecraft_server.jar https://launcher.mojang.com/v1/objects/125e5adf40c659fd3bce3e66e67a16bb49ecc1b9/server.jar
您需要先接受条款和条件,然后才能安装 Minecraft 服务器。使用这个命令:
$ sudo bash -c "echo eula=true > /opt/minecraft/survival/eula.txt"
最后,我们需要授予我们的
minecraft
用户帐户对 Minecraft 服务器目录的所有权:$ sudo chown -R minecraft /opt/minecraft/survival/
创建 Minecraft SystemD 启动脚本
将 Minecraft 启动脚本添加到 SystemD 将使您在需要启动 Minecraft 服务器时(例如系统重新启动后)非常方便地启动它。它还为您提供了一种简单的方法来停止重新启动服务器。
首先使用 nano 或您喜欢的文本编辑器创建以下文件:
$ sudo vi /etc/systemd/system/minecraft@.service
将以下内容粘贴到新文件中:
[Unit] Description=Minecraft Server: %i After=network.target [Service] WorkingDirectory=/opt/minecraft/%i User=minecraft Group=minecraft Restart=always ExecStart=/usr/bin/screen -DmS mc-%i /usr/bin/java -Xmx2G -jar minecraft_server.jar nogui ExecStop=/usr/bin/screen -p 0 -S mc-%i -X eval 'stuff "say SERVER SHUTTING DOWN IN 5 SECONDS. SAVING ALL MAPS..."\015' ExecStop=/bin/sleep 5 ExecStop=/usr/bin/screen -p 0 -S mc-%i -X eval 'stuff "save-all"\015' ExecStop=/usr/bin/screen -p 0 -S mc-%i -X eval 'stuff "stop"\015' [Install] WantedBy=multi-user.target
请注意,第 13 行指示 Minecraft 可以使用多少系统内存。上面的文件将分配 2 GB 内存。如果您想分配更多空间(例如 4 GB),则需要进行以下更改:
从 :
ExecStart=/usr/bin/screen -DmS mc-%i /usr/bin/java -Xmx2G -jar minecraft_server.jar nogui
到 :
ExecStart=/usr/bin/screen -DmS mc-%i /usr/bin/java -Xmx4G -jar minecraft_server.jar nogui
现在,您可以保存对文件的更改并退出。
启动我的世界服务器
启动 Minecraft 服务器非常简单。使用以下 systemctl
命令来放置它:
$ sudo systemctl start minecraft@survival
您可以使用以下命令确认服务器的当前状态,以确保其已启动并正在运行。它应该返回类似于下面的屏幕截图的输出。
$ sudo systemctl status minecraft@survival
如果您希望 Minecraft 服务器在每次系统重新启动时自动启动,请键入以下命令:
$ sudo systemctl enable minecraft@survival
要确保您的 Minecraft 服务器正在侦听传入连接,请使用 nmap 命令检查默认的 Minecraft 端口,即 25565
:
$ nmap -p 25565 localhost
只要 nmap
显示 Minecraft 正在侦听正确的端口,您的服务器就可以运行了。如果您的端口已关闭,请执行以下 ufw
命令以允许端口 25565
通过系统防火墙。
$ sudo ufw allow to any from any port 25565
如果您想创建另一个服务器实例,请继续阅读我们指南的下一部分。否则,请在您的服务器上享受游戏!
在同一主机上配置新的 Minecraft 服务器实例
如果您想托管 Minecraft 的另一个实例,我们已经完成了大部分工作。现在,我们只需为新实例复制一些现有配置。由于第一个服务器在端口 25565
上运行,因此在本例中我们将在端口 25566
上运行第二个 Minecraft 服务器。
首先,为此实例创建一个新目录。我们将这个新服务器称为
linuxconfig
:$ sudo mkdir /opt/minecraft/linuxconfig
接下来,从其他 Minecraft 目录复制 .jar 文件,并再次接受条款和条件:
$ sudo cp /opt/minecraft/survival/minecraft_server.jar /opt/minecraft/linuxconfig/ $ sudo bash -c "echo eula=true > /opt/minecraft/linuxconfig/eula.txt"
使用以下命令在 Minecraft 的配置文件中添加一行。这会将服务器实例配置为在端口
25566
上运行:$ sudo bash -c "echo server-port=25566 > /opt/minecraft/linuxconfig/server.properties"
授予您的
minecraft
用户新目录的所有权:$ sudo chown -R minecraft /opt/minecraft/linuxconfig/
现在,使用
systemctl
使服务器能够在系统启动时启动并启动服务器:$ sudo systemctl enable minecraft@linuxconfig $ sudo systemctl start minecraft@linuxconfig
验证新实例是否正常运行:
$ sudo systemctl status minecraft@linuxconfig
最后,使用以下内容作为可用于服务器的各种设置的参考。这些设置存储在
/opt/minecraft/linuxconfig
内的server.properties
文件中。$ sudo nano /opt/minecraft/linuxconfig/server.properties
文件内容:
max-tick-time=60000 generator-settings= allow-nether=true force-gamemode=false gamemode=0 enable-query=false player-idle-timeout=0 difficulty=1 spawn-monsters=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 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 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
结论
在本教程中,我们了解了如何在 Ubuntu 22.04 Jammy Jellyfish 上运行 Minecraft 服务器。我们还学习了如何配置 Minecraft Server 的多个实例以在单个主机上运行。 通过遵循我们教程中的步骤,您可以在短短几分钟内启动并运行 Minecraft 服务器,并配置一个方便的脚本来轻松控制服务器的状态。