《我的世界》是有史以来最受欢迎的游戏之一。 这是一款沙盒视频游戏,玩家可以探索无限的世界,并建造从简单的房屋到不同结构高耸的摩天大楼。
本教程介绍了如何在Ubuntu 20.04上制作Minecraft服务器。 我们将使用Systemd运行Minecraft服务器,并使用mcrcon
程序连接到正在运行的实例。 我们还将向您展示如何创建执行常规服务器的备份cron job任务。
先决条件
根据Minecraft官方网站,建议4GB RAM作为典型设置的最低配置。
安装构建mcrcon
工具所需的软件包:
sudo apt updatesudo apt install git build-essential
安装Java运行时环境
Minecraft需要Java 8或更高版本。 Minecraft服务器不需要图形用户界面,因此我们将安装Java的无头版本。 该版本具有更少的依赖性并且使用更少的系统资源,因此更适用于服务器应用程序。
运行以下命令以安装无头OpenJRE 11软件包:
sudo apt install openjdk-11-jre-headless
通过打印 Java版本验证安装是否正确:
java -version
openjdk version "11.0.7" 2020-04-14OpenJDK Runtime Environment (build 11.0.7+10-post-Ubuntu-3ubuntu1)
OpenJDK 64-Bit Server VM (build 11.0.7+10-post-Ubuntu-3ubuntu1, mixed mode, sharing)
创建Minecraft用户
出于安全原因,Minecraft不应在root用户下运行。 我们将创建一个新的系统用户,并与主目录/opt/minecraft
进行分组。 用户将具有运行Minecraft服务器的最低必需权限:
sudo useradd -r -m -U -d /opt/minecraft -s /bin/bash minecraft
我们不会为此用户设置密码。 这样,用户将无法通过SSH登录而不会受到损害。 要更改为minecraft
用户,您需要以root用户或具有 sudo权限的用户身份登录服务器。
在Ubuntu上安装Minecraft
在开始安装过程之前,请切换到minecraft
用户:
sudo su - minecraft
运行以下命令在用户主目录内创建三个新目录:
mkdir -p ~/{backups,tools,server}
backups
目录将存储您的Minecraft服务器备份。 您可以将该目录同步到远程备份服务器。tools
目录将容纳mcrcon
客户端和备份脚本。server
目录将包含实际的Minecraft 服务器及其数据。下载和编译mcrcon
RCON是允许您连接到Minecraft服务器并执行命令的协议。 mcron 是用C语言编写的RCON客户端。
我们将从GitHub下载源代码并构建mcrcon
二进制文件。
将Tiiffi/mcrcon
信息库从GitHub克隆到~/tools/mcron
目录:
git clone https://github.com/Tiiffi/mcrcon.git ~/tools/mcrcon
完成后,切换到mcron
目录并构建程序:
cd ~/tools/mcrcon
完成后,通过打印其版本来验证mcrcon
是否已成功编译:
./mcrcon -v
输出将如下所示:
sudo apt install openjdk-11-jre-headless
0
下载Minecraft服务器
有几种Minecraft服务器模块,例如 Craftbukkit 或 Spigot ,可让您在服务器上添加功能(插件)并进一步自定义和调整服务器设置。
在本指南中,我们将安装最新的Mojang官方Minecraft服务器。 相同的说明适用于安装其他服务器模块。
转到 Minecraft下载页面,以获取最新的Minecraft服务器的Java存档文件(JAR)的下载链接。 在撰写本文时,最新版本为1.16
。
使用 wget
在~/server
目录中下载jar文件:
sudo apt install openjdk-11-jre-headless
1
配置Minecraft服务器
下载完成后,切换到~/server
目录并启动Minecraft服务器:
sudo apt install openjdk-11-jre-headless
2
首次启动时,服务器执行一些操作,创建server.properties
和eula.txt
文件并停止。
sudo apt install openjdk-11-jre-headless
3
要运行服务器,您需要同意Minecraft EULA,如上面的输出所示。 打开eula.txt
文件,然后将eula=false
更改为eula=true
:
sudo apt install openjdk-11-jre-headless
4
〜/server/eula.txt
sudo apt install openjdk-11-jre-headless
5
关闭并保存文件。
接下来,打开server.properties
文件并启用rcon协议并设置rcon密码:
sudo apt install openjdk-11-jre-headless
6
找到以下几行并更新其值,如下所示:
〜/server/server.properties
sudo apt install openjdk-11-jre-headless
7
不要忘记将span-password
更改为更安全的密码。 如果您不想从远程位置连接到Minecraft服务器,请确保rcon端口已被防火墙阻止。
在这里,您还可以调整服务器的默认属性。 有关服务器设置的更多信息,请访问 server.properties 页面。
创建Systemd Unit文件
我们将创建一个Systemd Unit文件,并将Minecraft作为服务运行,而不是手动启动Minecraft服务器。
输入exit
,切换回您的sudo用户。
打开您的文本编辑器,然后在/etc/systemd/system/
目录中创建一个名为minecraft.service
的文件:
sudo apt install openjdk-11-jre-headless
8
粘贴以下配置:
/etc/systemd/system/minecraft.service
sudo apt install openjdk-11-jre-headless
9
根据您的服务器资源修改Xmx
和Xms
标志。 Xmx
标志定义Java虚拟机(JVM)的最大内存分配池,而Xms
定义初始内存分配池。 另外,请确保使用正确的rcon
端口和密码。
保存文件并重新加载systemd管理器配置:
java -version
0
您现在可以输入以下内容来启动Minecraft服务器:
java -version
1
首次启动该服务时,它将生成几个配置文件和目录,包括Minecraft世界。
使用以下命令检查服务状态:
java -version
2
java -version
3
最后,启用Minecraft服务在启动时自动启动:
java -version
4
调整防火墙
Ubuntu随附了一个称为UFW的防火墙配置工具。 如果系统上启用了防火墙,并且您想从本地网络的外部访问Minecraft服务器,则需要打开端口25565
:
java -version
5
配置备份
在本部分中,我们将创建一个备份Shell脚本和cronjob来自动备份Minecraft服务器。
切换到minecraft
:
sudo su - minecraft
打开您的文本编辑器并创建以下文件:
java -version
7
粘贴以下配置:
/opt/minecraft/tools/backup.sh
java -version
8
保存文件,使脚本可执行:
java -version
9
接下来,创建一个cron作业,该作业将在固定时间每天自动运行一次。
通过键入以下内容打开crontab文件:
openjdk version "11.0.7" 2020-04-14OpenJDK Runtime Environment (build 11.0.7+10-post-Ubuntu-3ubuntu1)
OpenJDK 64-Bit Server VM (build 11.0.7+10-post-Ubuntu-3ubuntu1, mixed mode, sharing)
0
要每天在23:00运行备份脚本,请粘贴以下行:
openjdk version "11.0.7" 2020-04-14OpenJDK Runtime Environment (build 11.0.7+10-post-Ubuntu-3ubuntu1)
OpenJDK 64-Bit Server VM (build 11.0.7+10-post-Ubuntu-3ubuntu1, mixed mode, sharing)
1
访问Minecraft控制台
要访问Minecraft控制台,请使用mcrcon
实用程序。 您需要指定主机,rcon端口,rcon密码并使用-t
开关启用mcrcon
终端模式:
openjdk version "11.0.7" 2020-04-14OpenJDK Runtime Environment (build 11.0.7+10-post-Ubuntu-3ubuntu1)
OpenJDK 64-Bit Server VM (build 11.0.7+10-post-Ubuntu-3ubuntu1, mixed mode, sharing)
2
openjdk version "11.0.7" 2020-04-14OpenJDK Runtime Environment (build 11.0.7+10-post-Ubuntu-3ubuntu1)
OpenJDK 64-Bit Server VM (build 11.0.7+10-post-Ubuntu-3ubuntu1, mixed mode, sharing)
3
从远程位置访问Minecraft控制台时,请确保未阻止rcon端口。
如果您定期连接到Minecraft控制台,则无需创建此长命令,而是创建一个 bash别名。
结论
我们已向您展示了如何在Ubuntu 20.04上制作Minecraft服务器并设置每日备份。
您现在可以启动 Minecraft客户端,连接到服务器,然后开始您的Minecraft冒险。
如果您遇到问题或有反馈,请在下面发表评论。
还没有评论,来说两句吧...