2 Linode安装CentOS 7系统
目录:
- 先决条件
- 安装Java运行时环境
- 创建Minecraft用户
- 在CentOS上安装Minecraft
- 下载并编译mcrcon
- 下载我的世界服务器
- 配置Minecraft服务器
- 创建系统单位文件
- 调整防火墙
- 配置备份
- 访问Minecraft控制台
- 结论
《我的世界》是有史以来最受欢迎的游戏之一。 这是一个关于放置方块并进行冒险的沙盒视频游戏。
在本教程中,我们将介绍在CentOS 7上安装和配置Minecraft Server的必要步骤。我们将使用
mcrcon
运行Minecraft服务器,并使用
mcrcon
实用程序连接到正在运行的实例。 我们还将向您展示如何使用Cron作业安排自动服务器备份。
先决条件
您登录后的用户必须具有sudo特权才能安装软件包。
安装构建
mcrcon
工具所需的软件包:
sudo yum install git
sudo yum group install "Development Tools"
安装Java运行时环境
Minecraft需要Java 8或更高版本。 由于Minecraft服务器不需要图形用户界面,因此我们将安装无头版本的openjdk。 该版本具有较少的依赖关系并使用较少的系统资源,因此更适合服务器应用程序。
Java的安装非常简单,只需运行:
sudo yum install java-1.8.0-openjdk-headless
通过打印Java版本来验证安装:
java -version
openjdk version "1.8.0_191" OpenJDK Runtime Environment (build 1.8.0_191-b12) OpenJDK 64-Bit Server VM (build 25.191-b12, mixed mode)
创建Minecraft用户
出于安全原因,不建议在root用户下以Minecraft身份运行服务。
我们将创建一个新的系统用户,并使用主目录
/opt/minecraft
将
/opt/minecraft
分组,该目录将运行Minecraft服务器:
sudo useradd -r -m -U -d /opt/minecraft -s /bin/bash minecraft
我们不会为此用户设置密码。 这是一种很好的安全做法,因为该用户将无法通过SSH登录。 要更改为
minecraft
用户,您需要以root用户或具有sudo特权的用户身份登录服务器。
在CentOS上安装Minecraft
在开始安装过程之前,请确保切换到用户
minecraft
:
sudo su - minecraft
使用以下命令在用户主目录中创建三个新目录:
mkdir -p ~/{backups, tools, server}
-
backups目录将存储您的服务器备份。 稍后您可以将此目录同步到远程备份服务器mcrcon目录将存储mcrcon客户端和备份脚本。server目录将包含实际的Minecraft服务器及其数据。
下载并编译mcrcon
RCON是一种协议,允许您连接到Minecraft服务器并执行命令。 mcron是用C内置的RCON客户端。
我们将从GitHub下载源代码并构建
mcrcon
二进制文件。
首先移至
~/tools
目录,并使用以下命令从GitHub克隆
Tiiffi/mcrcon
存储库:
cd ~/tools && git clone
克隆存储库后,导航至其目录:
cd ~/tools/mcrcon
使用GCC编译器构建
mcrcon
实用程序:
gcc -std=gnu11 -pedantic -Wall -Wextra -O2 -s -o mcrcon mcrcon.c
完成后,通过键入以下内容进行测试:
./mcrcon -h
输出将如下所示:
Usage: mcrcon…… Sends rcon commands to Minecraft server. Option: -h Print usage -H Server address -P Port (default is 25575) -p Rcon password -t Interactive terminal mode -s Silent mode (do not print received packets) -c Disable colors -r Output raw packets (debugging and custom handling) -v Output version information Server address, port and password can be set using following environment variables: MCRCON_HOST MCRCON_PORT MCRCON_PASS Command-line options will override environment variables. Rcon commands with arguments must be enclosed in quotes. Example: mcrcon -H my.minecraft.server -p password "say Server is restarting!" save-all stop mcrcon 0.6.1 (built: May 19 2019 23:39:16) Report bugs to tiiffi_at_gmail_dot_com or
下载我的世界服务器
有多个Minecraft服务器模块,例如Craftbukkit或Spigot,可让您在服务器上添加功能(插件),并进一步自定义和调整服务器设置。 在本教程中,我们将安装最新的Mojang官方香草Minecraft服务器。
可从Minecraft下载页面下载最新的Minecraft服务器的Java存档文件(JAR)。
在撰写本文时,最新版本为
1.14.1
。 在继续下一步之前,您应该检查下载页面是否有新版本。
运行以下
wget
命令以在
~/server
目录中下载Minecraft jar文件:
wget https://launcher.mojang.com/v1/objects/ed76d597a44c5266be2a7fcd77a8270f1f0bc118/server.jar -P ~/server
配置Minecraft服务器
导航到
~/server
目录并启动Minecraft服务器:
java -Xmx1024M -Xms512M -jar server.jar nogui
cd ~/server
java -Xmx1024M -Xms512M -jar server.jar nogui
首次启动服务器时,它将执行一些操作并创建
server.properties
和
eula.txt
文件并停止。
: 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.
您需要同意Minecraft EULA才能运行服务器。 打开
eula.txt
文件,将
eula=false
更改为
eula=true
:
nano ~/server/eula.txt
〜/服务器/ eula.txt
#By changing the setting below to TRUE you are indicating your agreement to our EULA (https://account.mojang.com/documents/minecraft_eula). #Sun May 19 23:41:45 PDT 2019 eula=true
关闭并保存文件。
接下来,打开
server.properties
文件,启用rcon协议并设置rcon密码:
nano ~/server/server.properties
找到以下几行并更新其值,如下所示:
〜/ server / server.properties
rcon.port=25575 rcon.password=strong-password enable-rcon=true
不要忘记将
strong-password
为更安全
strong-password
。 如果您不想从远程位置连接到Minecraft服务器,请确保rcon端口被防火墙阻止。
在这里,您还可以调整服务器的默认属性。 有关可能的设置的更多信息,请访问server.properties页面。
创建系统单位文件
为了将Minecraft作为服务运行,我们将创建一个新的Systemd单元文件。
通过键入
exit
切换回您的sudo用户。
打开您的文本编辑器,然后在
/etc/systemd/system/
创建一个名为
minecraft.service
的文件:
sudo nano /etc/systemd/system/minecraft.service
粘贴以下配置:
/etc/systemd/system/minecraft.service
Description=Minecraft Server After=network.target User=minecraft Nice=1 KillMode=none SuccessExitStatus=0 1 ProtectHome=true ProtectSystem=full PrivateDevices=true NoNewPrivileges=true WorkingDirectory=/opt/minecraft/server ExecStart=/usr/bin/java -Xmx1024M -Xms512M -jar server.jar nogui ExecStop=/opt/minecraft/tools/mcrcon/mcrcon -H 127.0.0.1 -P 25575 -p strong-password stop WantedBy=multi-user.target
根据您的服务器资源修改
Xmx
和
Xms
标志。
Xmx
标志定义Java虚拟机(JVM)的最大内存分配池,而
Xms
定义初始内存分配池。 另外,请确保使用正确的
rcon
端口和密码。
保存并关闭文件,并通知systemd我们创建了一个新的单位文件:
sudo systemctl daemon-reload
现在,您可以通过执行以下命令来启动Minecraft服务器:
sudo systemctl start minecraft
首先启动服务时,它将生成几个配置文件和目录,包括Minecraft世界。
使用以下命令检查服务状态:
sudo systemctl status minecraft
● minecraft.service - Minecraft Server Loaded: loaded (/etc/systemd/system/minecraft.service; disabled; vendor preset: disabled) Active: active (running) since Sun 2019-05-19 23:49:18 PDT; 9min ago Main PID: 17356 (java) CGroup: /system.slice/minecraft.service └─17356 /usr/bin/java -Xmx1024M -Xms512M -jar server.jar nogui --noconsole
使Minecraft服务在引导时自动启动:
sudo systemctl enable minecraft
调整防火墙
如果您的服务器受防火墙保护以从本地网络外部访问Minecraft服务器,则需要打开端口
25565
:
sudo firewall-cmd --permanent --zone=public --add-port=25565/tcp
sudo firewall-cmd --reload
配置备份
在本节中,我们将创建一个备份脚本和cronjob来自动备份Minecraft服务器。
首先切换到我的世界用户:
sudo su - minecraft
打开您的文本编辑器并创建以下文件:
nano /opt/minecraft/tools/backup.sh
粘贴以下配置:
/opt/minecraft/tools/backup.sh
#!/bin/bash function rcon { /opt/minecraft/tools/mcrcon/mcrcon -H 127.0.0.1 -P 25575 -p strong-password "$1" } rcon "save-off" rcon "save-all" tar -cvpzf /opt/minecraft/backups/server-$(date +%F_%R).tar.gz /opt/minecraft/server rcon "save-on" ## Delete older backups find /opt/minecraft/backups/ -type f -mtime +7 -name '*.gz' -delete
通过发出以下
chmod
命令,使脚本可执行:
chmod +x /opt/minecraft/tools/backup.sh
打开crontab文件并创建一个cronjob,它将每天一次在固定时间自动运行一次:
crontab -e
我们将每天23:00h运行备份脚本:
0 23 * * * /opt/minecraft/tools/backup.sh
访问Minecraft控制台
要访问Minecraft控制台,您可以使用
mcrcon
实用程序。
语法如下,您需要指定主机,rcon端口,rcon密码并使用
-t
开关启用
mcrcon
终端模式:
/opt/minecraft/tools/mcrcon/mcrcon -H 127.0.0.1 -P 25575 -p strong-password -t
Logged in. Type "Q" to quit! >
结论
您已经在CentOS 7系统上成功安装了Minecraft服务器,并设置了每日备份。
我的世界如何在centos 7上添加和删除用户
知道如何添加和删除用户是Linux用户应该知道的基本技能之一。 在本教程中,我们将说明如何在CentOS 7系统上添加和删除用户。
如何在centos 7上添加交换空间
交换是物理RAM内存已满时使用的磁盘空间。 本教程说明了如何在CentOS 7系统上添加交换文件。
如何在centos 8上添加交换空间
交换是物理RAM内存已满时使用的磁盘空间。 本文介绍了在CentOS 8系统上添加交换文件的步骤。







