编辑
2025-01-17
Linux
0
请注意,本文编写于 92 天前,最后修改于 92 天前,其中某些信息可能已经过时。

目录

关闭旧服务端并备份数据
配置新服务器
模组卸载
重新启动服务端

由于Minecraft基岩版发新版本后会禁止旧版本的登陆,就像这样

image.png

因此需要维护服务器的更新

关闭旧服务端并备份数据

如果像我一样使用screen命令运行服务器的话,就可以使用下面的命令

shell
screen -r mc

其中mc是服务端的名称,如果忘记的话可以使用下面的命令查看

shell
screen -ls

期望中会输出这样的结果

shell
There are screens on: 3235882.mc (10/26/2024 01:04:27 AM) (Detached) 1 Sockets in /run/screen/S-ecs-user.

进入服务端后台后输入stop命令安全关闭服务端,输出会像这样

shell
stop [2025-01-17 20:07:01:040 INFO] Server stop requested. [2025-01-17 20:07:01:130 INFO] Stopping server... Quit correctly

关闭服务端后ls能看到目录的结构

shell
allowlist.json Dedicated_Server.txt MQC-121.30.1-server.zip release-notes.txt world_templates bedrock_server definitions MQC-121.40.1-server.zip resource_packs 读我.txt bedrock-server-1.21.42.01.zip development_behavior_packs MQC-SERVER server.properties bedrock_server_how_to.html development_resource_packs packet-statistics.txt treatments behavior_packs development_skin_packs permissions.json worlds config minecraftpe premium_cache worlds.zip

其中需要备份的文件有

  1. worlds文件夹:保存地图数据以及模组
  2. permissions.json:保存用户权限
  3. server.properties:保存服务端配置
  4. allowlist.json:玩家白名单

需要注意的是behavior_packsresource_packs是没有作用的,模组是装在worlds文件夹的,不需要迁移

配置新服务器

首先从官网下载最新的服务端,下载链接,可以选择直接wget下载也可以本地下载再上传到服务器

然后使用unzip解压

shell
unzip bedrock-server-1.21.51.02.zip

解压后的目录应当是这样的

shell
allowlist.json bedrock-server-1.21.51.02.zip behavior_packs definitions profanity_filter.wlist resource_packs bedrock_server bedrock_server_how_to.html config permissions.json release-notes.txt server.properties

然后需要将之前服务端的数据迁移过来,使用命令(注意此时处于mc-server-6目录下,mc-server-5是要迁移的服务端)

shell
cp -r ../mc-server-5/worlds ./ cp ../mc-server-5/permissions.json ./ cp ../mc-server-5/server.properties ./ cp ../mc-server-5/allowlist.json ./

模组卸载

基岩版小版本之间都存在模组适配存在问题,需要卸载后再启动,模组的卸载是需要手动的。进入

shell
worlds/Bedrock level/

其中的目录结构是这样的

shell
behavior_packs/ level.dat levelname.txt world_behavior_pack_history.json world_resource_pack_history.json db/ level.dat_old resource_packs/ world_behavior_packs.json world_resource_packs.json

需要操作的是behavior_packs目录和world_behavior_packs.json文件

  • behavior_packs:放着模组的本体
  • world_behavior_packs.json:服务端启动时从这里看要加载什么模组

由于只安装了连锁采集模组,world_behavior_packs.json是这样的

json
[{"pack_id":"05a423a2-5644-fad1-7784-a6d4c369c820","version":[121,40,1]}]

它对应的是worlds/Bedrock level/behavior_packs/chain_bp目录中manifest.json文件的header属性

shell
pack_id->uuid, version->version

下面贴出manifest.json文件

json
{ "format_version": 2, "header": { "name": "MQC-121.40.1-BP-SERVER", "uuid": "05a423a2-5644-fad1-7784-a6d4c369c820", "version": [121, 40, 1], "min_engine_version": [1, 21, 40] }, "metadata": { "authors": ["lxhzzy"], "generated_with": { "esbuild": ["0.19.9"], "gulp": ["4.0.2"] }, "license": "CC-BY-ND-4.0" }, "modules": [ { "description": "script_modules", "type": "script", "language": "javascript", "uuid": "b94d62b8-345a-63de-bf91-9c4aba9e2913", "version": [1, 0, 0], "entry": "index.js" } ], "dependencies": [ { "module_name": "@minecraft/server", "version": "1.16.0-beta" }, { "module_name": "@minecraft/server-ui", "version": "1.3.0" }, { "module_name": "@minecraft/server-admin", "version": "1.0.0-beta" } ], "capabilities": ["script_eval"] }

只需要把它们都删掉就好了

重新启动服务端

完成这一切,回到服务端根目录执行

shell
./bedrock_server

就可以启动服务端愉快地玩耍啦

本文作者:GBwater

本文链接:

版权声明:本博客所有文章除特别声明外,均采用 BY-NC-SA 许可协议。转载请注明出处!