MC-BE基岩版服务器搭建与日常维护
有部分内容被csdn和谐,强烈建议移步我的个人博客以获得更好的排版和阅读体验: xzajyjs.cn。
目录
搭建环境
由于我们要搭建一个24小时不中断的mc基岩版服务器,因此需要一个低延迟的服务器,优先推荐阿里云和腾讯云,我现在用的是阿里的轻量ECS,趁活动一个月也就几块钱。这里用vultr演示一下,过程几乎是一模一样的。
注意在安装操作系统时务必使用 ubuntu ,版本推荐 20.04 。
利用ssh进行连接

开始部署
接着我们打开如下网站:点击打开
搭建服务器有两种方式,一种是架设在windows一种是架设在linux上,为了更好的稳定性和占用更少的资源,我们使用右边的linux方案。点击download下载服务端文件。

下载下来是这样一个文件
bedrock-server-1.17.11.01.zip
通过 ftp 传到 linux 上
对其进行解压提示没有安装 unzip

apt install unzip
mkdir mcserver
mv bedrock-server-1.17.11.01.zip ./mcserver
cd mcserver
unzip bedrock-server-1.17.11.01.zip
rm bedrock-server-1.17.11.01.zip -f
现在我们的服务器已经做好了开服的准备,但是在此之前必须要对其配置文件进行必要的调整。(当然也可以在本地调整完毕后再上传)
vi server.properties
server name --> 服务器名字
max-players --> 服务器最大人数
online-mode --> 强制正版验证
server-port --> 服务器ipv4端口号,默认即可
view-distance --> 最大视距
texturepack-required --> 强制材质包
配置好这些就可以准备开服了。为了能让我们断开ssh连接后服务器仍能运行,我们需要使用screen这个工具
apt install screen
screen -S mcserver
LD_LIBRARY_PATH=. ./bedrock_server

此时服务器就已经开启,可以尝试连接了。

之后当我们断开ssh重新连接进行管理时,可以通过screen -r mcserver 切换到我们的服务器管理后台。
日常维护
服务器的白名单机制
我们在日常的服务器运营过程中,为了防止一些熊孩子破坏,需要使用白名单机制过滤。白名单文件就在我们解压出来的文件里面的 whitelist.json
对于白名单文件的设置,格式如下即可:
[
{
"name":"haha123",
"xuid":"xxxxxxx" //设置时可忽略
},
{
"name":"haha234"
}
...
]
保存重启服务端即可。
定时备份
作为一个需要长期稳定运行的服务器,我们必须有一个定时备份的设定。其实这就是利用linux本身的备份机制,通过定时运行一个事先写好的脚本,对指定文件进行整体备份。
首先新建一个备份脚本 autoDayBackup.sh
touch autoDayBackup.sh
chmod +x autoDayBackup.sh
vi autoDayBackup.sh
粘贴如下内容:
#!/bin/sh
# 备份会储存到 /home/backup 目录,文件夹格式为日期 如2021年3月2日的备份储存在 /home/backup/20210302/File.tar.gz
mkdir -p /home/backup
find /home/backup -mtime +14 -name "*.tar.gz" -exec rm -rf {} \; # 清理14天以前的备份,修改 [+14] 可以修改备份储存天数
sleep 2
find /home/backup -maxdepth 1 -type d -empty -exec rm -rf {} \; # 清理空文件夹
mkdir -p /home/backup/temp # 新建临时目录
echo 'mkdir done'
# 自动保存服务端
screen -xU mcserver -p 0 -X stuff "save-all\n"
sleep 1
# 复制保存后的服务器文件至临时目录
mkdir -p /home/backup/temp/mcserver
cp -r /root/mcserver/* /home/backup/temp/mcserver
sleep 1
echo 'copy done'
# 打包并压缩
mkdir -p /home/backup/$(date +%Y%m%d)
tar -zcf /home/backup/$(date +%Y%m%d)/mcserver$(date +%Y%m%d).tar.gz /home/backup/temp/mcserver
sleep 1
echo 'zip done'
# 清理临时文件并退出
rm -rf /home/backup/temp
echo 'all done'
exit 1
验证这个脚本文件生效,直接运行该脚本
./autoDayBackup.sh


进入/home/backup

发现整个mcserver文件被成功打包成了 .tar.gz ,可以进行下一步操作了,定时运行这个脚本。
crontab -e
在最下面一行添加如下
00 3 * * * /root/autoDayBackup.sh

意思是每天的凌晨3点执行root目录下的脚本文件
至此每日自动备份已经设置完毕。
详细的contab使用方法点此
服务端升级
主要思路是在服务端发布网页下载新的服务端,然后使用同样的部署方法部署到服务器上,将旧的服务器的关键文件进行覆盖,即可完成服务端的升级。
主要备份文件:

对新的服务端中的这些文件进行完全覆盖即可。
服务器模组安装
在本地安装mod非常简单,大多数的模组文件后缀是 .mcpack 和 .mcaddon ,无论是移动端还是桌面端双击即可调起安装。
但是在服务器上安装我们需要对这个模组文件进行解压缩,解压出来一般会有两个文件夹(也可能只有一个),资源包和行为包,我们将整个资源包文件夹放入服务器的 resource_packs ,行为包文件夹放入服务器的 behavior_packs。
并且修改如下目录的如下文件(如没有则新建)

用记事本分别打开要安装的资源包的两个文件夹中的 manifest.json

关注下图中第六、第七行的 uuid 和 version (是 head 下的)。
我们以修改 resource_packs 为例,behavior_packs 同理。将uuid填入 pack_id,version 填入version。
[
{
"pack_id" : "6f383eac-b7ae-48f1-a5aa-b702343a65d4",
"version" : [1,0,0]
},
{
...
}
]
最后可在 server.properties 中设置强制使用材质包。

MC-BE基岩版服务器搭建与日常维护的更多相关文章
- 阿里云服务器搭建Docker版AWVS
本文严重参考该文章:https://www.sqlsec.com/2020/04/awvs.html 阿里云服务器搭建Docker版AWVS,因为之前有使用Docker的经验,所以本文只是简述一下安装 ...
- SVN服务器搭建--Subversio与TortoiseSVN的配置安装
SVN服务器搭建和使用(一) Subversion是优秀的版本控制工具,其具体的的优点和详细介绍,这里就不再多说. 首先来下载和搭建SVN服务器. 现在Subversion已经迁移到apache网站上 ...
- AD 域服务简介(一)- 基于 LDAP 的 AD 域服务器搭建及其使用(转)
一.前言 1.1 AD 域服务 什么是目录(directory)呢? 日常生活中使用的电话薄内记录着亲朋好友的姓名.电话与地址等数据,它就是 telephone directory(电话目录):计算机 ...
- GitLab → 搭建中常遇的问题与日常维护
开心一刻 隔壁有一个80多岁的老大爷,昨天在小区的一棵树下发现一条黑色的蛇,冻僵了,大爷善心大发,就把蛇揣在了怀里,想给它一点温暖. 今天一大早看到大爷在树上挂了一个牌子,写到:不准随地大小便! 搭建 ...
- Git本地服务器搭建及使用详解
Git本地服务器搭建及使用 Git是一款免费.开源的分布式版本控制系统.众所周知的Github便是基于Git的开源代码库以及版本控制系统,由于其远程托管服务仅对开源免费,所以搭建本地Git服务器也是个 ...
- 版本控制-Git服务器搭建和常用命令使用
Git是目前世界上最先进的分布式版本控制系统(没有之一).使用Svn的请参考<版本控制-svn服务器搭建和常用命令(centos 6.3)>,下面介绍Git的常用命令 常用命令 简单版 升 ...
- SVN服务器搭建和使用(二)
SVN服务器搭建和使用(二) 上一篇介绍了VisualSVN Server和TortoiseSVN的下载,安装,汉化.这篇介绍一下如何使用VisualSVN Server建立版本库,以及Tortois ...
- Socket实现仿QQ聊天(可部署于广域网)附源码(2)-服务器搭建
1.前言 这是本系列的第二篇文章,第一篇文章得到了很多朋友们的支持,在这里表示非常的感谢.对于这一系列文章需要补充的是这只是一篇入门级别的Socket通信文章,对于专业人员来说完全可以跳过.本文只介绍 ...
- svn一整套使用,从下载到整个服务器搭建完成的详细说明
SVN服务器的本地搭建和使用 Subversion是优秀的版本控制工具,其具体的的优点和详细介绍,这里就不再多说. 首先来下载和搭建SVN服务器. 现在Subversion已经迁移到apache网站上 ...
随机推荐
- JAVA 之 每日一记 之 算法( 给你一个Excel表列序号,返回出它对应的数字 )
代码结果:(只想要代码的可以离开了,代码给你了,绝对能用的.想要思路的往下看.) class Solution { public int titleToNumber(String s) { int a ...
- Windows内核-7-IRP和派遣函数
Windows内核-7-IRP和派遣函数 IRP以及派遣函数是Windows中非常重要的概念.IRP 是I/O Request Pocket的简称,意思是I/O操作的请求包,Windows中所有Use ...
- noip模拟43
A. 第一题 儿子遍历顺序按深度由小到大即可 B. 第二题 二分最小值,以点权作为初始距离跑最长路即可 直接用大根堆跑 \(dij\) 会 \(T\),考虑初始权值可以处理,且边权一定,用类似蚯蚓的方 ...
- IP头详解
IP包头长度(Header Length):长度4比特.这个字段的作用是为了描述IP包头的长度,因为在IP包头中有变长的可选部分.该部分占4个bit位,单位为32bit(4个字节),即本区域值= IP ...
- 基于Ubuntu18.04一站式部署(python-mysql-redis-nginx)
基于Ubuntu18.04一站式部署 Python3.6.8的安装 1. 安装依赖 ~$ sudo apt install openssl* zlib* 2. 安装python3.6.8(个人建议从官 ...
- Redis集群的搭建及与SpringBoot的整合
1.概述 之前聊了Redis的哨兵模式,哨兵模式解决了读的并发问题,也解决了Master节点单点的问题. 但随着系统越来越庞大,缓存的数据越来越多,服务器的内存容量又成了问题,需要水平扩容,此时哨兵模 ...
- python中时间处理标准库DateTime加强版库:pendulum
DateTime 的时区问题 Python的datetime可以处理2种类型的时间,分别为offset-naive和offset-aware.前者是指没有包含时区信息的时间,后者是指包含时区信息的时间 ...
- axios 取消请求 (如:用户登录失效,阻止其他请求)
const CancelToken = axios.CancelToken; const source = CancelToken.source(); axios.interceptors.reque ...
- 使用SQL SERVER存储过程实现历史数据迁移
今天讲下软件开发中最常见的历史数据迁移方式.在讲迁移之前,先简单介绍下几个基本概念. 1.什么是历史数据迁移? 简单直白地说:就是将一些创建时间比较久而且不常用的历史数据,存储到另一个地方(可以是另一 ...
- 【redis前传】集思广益之quicklist,取其精华去其糟粕
前言 在之前我们已经学习了redis五大数据结构中的list结构.其内部是linkedList和zipList两种结构.这是我们已经学习的内容.之前我没有结合操作具体查看.事实上在两者中还存在一种结合 ...