TISUnion / QuickBackupM

A backup / restore plugin, with multiple backup slots
GNU General Public License v3.0
148 stars 20 forks source link

备份无法正常工作 #42

Closed ForeverInfinity closed 4 months ago

ForeverInfinity commented 1 year ago

!!qb make [MCDR] [15:55:34] [QBM - create/INFO]: [QBM] Backing up, please wait [Server] [15:55:34 INFO]: Automatic saving is now disabled [Server] [15:55:34 INFO]: Saving the game (this may take a moment!) [Server] [15:55:34 INFO]: Saved the game !!qb list [MCDR] [15:55:58] [QBM - list/INFO]: [Slot Information] [MCDR] [15:55:58] [QBM - list/INFO]: [Slot 1] None [MCDR] [15:55:58] [QBM - list/INFO]: [Slot 2] None [MCDR] [15:55:58] [QBM - list/INFO]: [Slot 3] None [MCDR] [15:55:58] [QBM - list/INFO]: [Slot 4] None [MCDR] [15:55:58] [QBM - list/INFO]: [Slot 5] None [MCDR] [15:55:58] [QBM - list/INFO]: [Slot 6] None [MCDR] [15:55:58] [QBM - list/INFO]: [Slot 7] None [MCDR] [15:55:58] [QBM - list/INFO]: [Slot 8] None [MCDR] [15:55:58] [QBM - list/INFO]: [Slot 9] None [MCDR] [15:55:58] [QBM - list/INFO]: Total space consumed: 0.0 MB

Fallen-Breath commented 1 year ago

请给出足够信息以供分析此 issue,包括:

仅根据你给出的信息,只能得出“备份正在进行,还没完成,因此槽位信息为空”的结论,无法进行有效的分析

ForeverInfinity commented 1 year ago

请给出足够信息以供分析此 issue,包括:

  • 环境:操作系统、MCDR 版本、Python 版本、服务端版本等
  • 复现步骤:具体的能复现此 issue 的操作流程
  • 具体表现:发生此 issue 时的表现,包括控制台输出/日志上下文,qb_multi 文件夹的内容

仅根据你给出的信息,只能得出“备份正在进行,还没完成,因此槽位信息为空”的结论,无法进行有效的分析

@Fallen-Breath 环境:{ 操作系统:Windows Server 2022 21H2 20348.169, MCDR版本:v2.7.2, python版本:3.11.3 x64, 服务端版本:arclight-forge-1.18.2-1.0.8 } 复现步骤以及控制台表现:控制台输入!!qb make指令后快速弹出如下提示 [Server] [15:55:34 INFO]: Automatic saving is now disabled [Server] [15:55:34 INFO]: Saving the game (this may take a moment!) [Server] [15:55:34 INFO]: Saved the game 等待一段时间(3分钟)后发送!!qb list指令得到以下结果 [MCDR] [15:55:58] [QBM - list/INFO]: Slot [Information] [MCDR] [15:55:58] [QBM - list/INFO]: [Slot 1] None [MCDR] [15:55:58] [QBM - list/INFO]: [Slot 2] None [MCDR] [15:55:58] [QBM - list/INFO]: [Slot 3] None [MCDR] [15:55:58] [QBM - list/INFO]: [Slot 4] None [MCDR] [15:55:58] [QBM - list/INFO]: [Slot 5] None [MCDR] [15:55:58] [QBM - list/INFO]: [Slot 6] None [MCDR] [15:55:58] [QBM - list/INFO]: [Slot 7] None [MCDR] [15:55:58] [QBM - list/INFO]: [Slot 8] None [MCDR] [15:55:58] [QBM - list/INFO]: [Slot 9] None [MCDR] [15:55:58] [QBM - list/INFO]: Total space consumed: 0.0 MB 此时检查qb_multi文件夹 有slot{1-9}一共9个文件夹,每个文件夹均为空 此时再次发送!!qb make指令得到如下输出 [MCDR] [18:39:46] [QBM - create/INFO]: [QBM] Executing "Backing up", please don't spam 在服务端关闭或重启之前执行!!qb make均只能得到上述输出

Fallen-Breath commented 1 year ago

请确定 MCDR 已被正确配置,尤其是 MCDR handler 选项,因为 QBM 正在等待服务器自动保存结束,但未识别到 Saved the game 这一条消息

ForeverInfinity commented 1 year ago

请确定 MCDR 已被正确配置,尤其是 MCDR handler 选项,因为 QBM 正在等待服务器自动保存结束,但未识别到 Saved the game 这一条消息

感谢,修改handler后可使用explain参数正常备份。但是tar参数仍然报出如下错误

!!qb make [MCDR] [23:45:59] [QBM - create/INFO]: [QBM] 备份中...请稍等 [Server] [23:45:59 INFO]: Automatic saving is now disabled [Server] [23:45:59 INFO]: Saving the game (this may take a moment!) [Server] [23:45:59 INFO]: Saved the game [MCDR] [23:45:59] [QBM - create/INFO] [quick_backup_multi]: Slot 1 (None) is deleted to provide spaces for the incoming backup [MCDR] [23:45:59] [QBM - create/INFO] [quick_backup_multi]: storing ./server\world -> ./qb_multi\slot1\backup.tar [MCDR] [23:45:59] [QBM - create/ERROR]: [QBM] Error creating backup Traceback (most recent call last): File "plugins\QuickBackupM-v1.8.0.mcdr\quick_backup_multi__init__.py", line 367, in _create_backup copy_worlds(config.server_path, slot_path, CopyWorldIntent.backup) File "plugins\QuickBackupM-v1.8.0.mcdr\quick_backup_multi__init__.py", line 130, in copy_worlds backup_file.add(src_path, arcname=world, filter=tar_filter) File "C:\Users\Administrator\AppData\Local\Programs\Python\Python311\Lib\tarfile.py", line 2008, in add self.add(os.path.join(name, f), os.path.join(arcname, f), File "C:\Users\Administrator\AppData\Local\Programs\Python\Python311\Lib\tarfile.py", line 2002, in add self.addfile(tarinfo, f) File "C:\Users\Administrator\AppData\Local\Programs\Python\Python311\Lib\tarfile.py", line 2030, in addfile copyfileobj(fileobj, self.fileobj, tarinfo.size, bufsize=bufsize) File "C:\Users\Administrator\AppData\Local\Programs\Python\Python311\Lib\tarfile.py", line 254, in copyfileobj buf = src.read(remainder) ^^^^^^^^^^^^^^^^^^^ PermissionError: [Errno 13] Permission denied [MCDR] [23:45:59] [QBM - create/INFO]: [QBM] 备份失败,错误代码[Errno 13] Permission denied [Server] [23:45:59 INFO]: Automatic saving is now enabled

Fallen-Breath commented 1 year ago

如错误代码所述,请检查文件权限,确保 MCDR 进程拥有足够的权限,以及文件不被占用(windows)。类似 #41