MirrorArchiveManager

A plugin for mirror server archive management based on prime_backup. Supports managing multiple mirror server archives

management

Installation command

!!MCDR plugin install mirror_archive_manager

Author

Synced at

...

Last update

...

Latest version

Total downloads

35

Back to catalogue

MirrorArchiveManager

一个基于Prime_Backup插件的支持管理多个镜像服务器的插件,支持存档同步,启停控制

功能

Important

该插件不会帮助你自动配置镜像服,请确保你已经配好了可以正常游玩的镜像服再使用本插件.

MirrorArchiveManager插件借助Prime Backup插件(以下简称"pb")强大的存档备份及回档机制,实现了以下功能

  1. 支持将主服选择pb的存档直接回档到镜像服
  2. 主服支持配置多个镜像服
  3. 主服可以通过指令直接控制镜像服的启停

帮助指令

========== Mirror Archive Manager ==========
!!mam start <server_name> -- 启动镜像服 <server_name>
!!mam stop <server_name> -- 停止镜像服 <server_name>
!!mam sync <server_name> <id> -- 将 prime_backup 中的编号#<id>的存档同步到<server_name>
================ by Aimerny ================

依赖

python依赖项版本
requests^2.31.0
fastapi^0.111.1
mcdr依赖项版本
mcdreforged^2.12.x
prime_backup^1.7.4

使用说明

在MirrorArchiveManager插件(以下简称mam)的视角里,服务器有两个角色,分别为mainmirror. 如果你需要将main服务器的pb备份同步到mirror服务器,则需要进行一些小小的配置

使用前配置

main服务器配置(未展示的配置无需配置)

{
    // 需要设置为true
    "main": true,
    // 镜像服配置,可配置多个
    "mirrors": [
        {
            // 镜像服务器名
            "name": "mirror",
            // 镜像服务器地址
            "host": "127.0.0.1",
            // 镜像服务器配置的端口(如下配置中设置了30076)
            "port": 30076
        }
    ],
    // 指令的MCDR权限等级
    "perms": {
        "start": 3,
        "stop": 3,
        "sync": 3
    }
}

mirror服务器配置(未展示的配置无需配置)

{
    // 需要设置为false
    "main": false,
    // 主服的相对路径或绝对路径
    "main_path": "../main",
    // 控制端口
    "port": 30076
}

启动主服+镜像服

启动后你会在主服看到如下日志:

[MCDR] [03:01:41] [TaskExecutor/INFO] [mirror_archive_manager]: MAM running with main role!
[MCDR] [03:01:41] [TaskExecutor/INFO] [mirror_archive_manager]: MirrorArchiveManager initialization completed!

在镜像服会看到如下日志:

[MCDR] [03:07:04] [TaskExecutor/INFO] [mirror_archive_manager]: MAM running with mirror role!
[MCDR] [03:07:04] [TaskExecutor/INFO] [mirror_archive_manager]: mirror http server started...
[MCDR] [03:07:04] [TaskExecutor/INFO] [mirror_archive_manager]: mirror process...
[MCDR] [03:07:04] [TaskExecutor/INFO] [mirror_archive_manager]: MirrorArchiveManager initialization completed!

此时插件便加载成功了.

启停镜像服

Important

虽然该插件具有启停镜像服功能,但是要求镜像服处于MCDR进程启动的状态.换而言之,只有通过mam停止的镜像服才能再通过mam启动

停止

!!mam stop <server_name>: server_name非必填,如果没填会用第一个已配置的镜像服

启动

!!mam start <server_name>: server_name非必填,如果没填会用第一个已配置的镜像服

指定备份存档同步到镜像服

!!mam sync <id> <server_name>

  1. server_name非必填,如果没填会用第一个已配置的镜像服
  2. id为pb备份id,必填

配置详解

配置说明示例
main是否是主服角色,必填true
mirrors镜像服配置,主服必填[]
mirrors[].name主服操作镜像时的名称,必填且唯一mirror
mirrors[].host主服连接镜像时的地址,必填127.0.0.1
mirrors[].port主服连接镜像时访问端口,必填30076
main_path镜像服相对主服的文件夹的相对路径或者主服的绝对路径,镜像服必填../main 或者 /Users/aim/mcdr/main
port镜像服被主服访问的端口,镜像服必填30076
perms指令操作权限等级,使用MCDR的权限等级,主服必填3

Introduction source: src/mirror_archive_manager/README.md