• 周年纪念勋章活动已圆满结束,如有已购买但仍未申请的用户,可以通过对应勋章的下载链接申请~
PotatoSack —— 可几乎不占用额外硬盘空间来利用 OneDrive 备份世界数据 [1.19+]

原创 开源 世界管理 PotatoSack —— 可几乎不占用额外硬盘空间来利用 OneDrive 备份世界数据 [1.19+] 1.0.0

版权类型
原创
插件中文名称
土豆麻袋
插件英文名称
PotatoSack
原帖地址
https://github.com/Bottle-M/PotatoSack
支持的核心(服务端)
  1. Paper
  2. Purpur
  3. PufferFish
语言支持
中文(简体)
适配版本(Java)
  1. 1.21
  2. 1.20
  3. 1.19
  • 开源地址,欢迎 Star:https://github.com/Bottle-M/PotatoSack
  • 上面标明的“支持的核心”和“适配版本”仅是我测试过的版本,其余的尚未测试。
  • ✨ 本插件在压缩上传文件时可以几乎不占用多余的本地硬盘空间,适用于服务提供商对硬盘空间进行了限制的场景。
  • 本插件目前仅支持 OneDrive (非世纪互联版)。
[MD]

## 简介

这是一个咱为自己 Minecraft 服务器写的一个简单的备份插件,功能较为简单,可以对世界数据进行备份。支持增量备份/全量备份机制。

备份的存档不会留存在本地,而是上传至 OneDrive 云端目录中。

## 概念介绍

请见 https://github.com/Bottle-M/PotatoSack/blob/main/README.zh-CN.md#概念介绍

其中包含对于本插件“一组备份“以及”流式压缩上传“的介绍。

## 安装方式

1. 在[这里](https://github.com/Bottle-M/PotatoSack/releases/latest)下载插件。
2. 把插件复制到你服务器目录下的 `plugins` 目录中。
3. 启动服务器,插件会在 `plugins/PotatoSack` 目录下生成初始配置文件 `configs.yml`,你需要在此文件中对插件进行必要的配置(包括 OneDrive Token 的配置,在下方“小工具”中有相应的工具)。
4. 修改配置后重启服务器即可。如果见到下面这样的日志内容,说明 PotatoSack 插件启动成功。
```log
[12:52:32 INFO]: [PotatoSack] PotatoSack successfully initialized! Savor using it!
```

## 配置文件

配置文件位于 `plugins/PotatoSack/configs.yml`。

[/MD]

[MD]
```yaml
# OneDrive API 配置 (支持 OneDrive Business(ODB)/Personal(ODC))
onedrive:
# 开发文档参考: https://learn.microsoft.com/en-us/g...e-the-refresh-token-to-get-a-new-access-token
# 工具: https://github.com/Bottle-M/PotatoSack/tree/main/onedrive-token-tool
client-id:
client-secret:
refresh-token:
# 你想要保留的备份组数.
# 注:"一组备份 "包括一个全量备份和其后的增量备份(在下一个全量备份之前的)。
max-full-backups-retained: 3
# 相邻两次全量备份之间的时间间隔 (以分钟为单位)
full-backup-interval: 1440
# 相邻两次增量备份之间的时间间隔 (以分钟为单位)
incremental-backup-check-interval: 15
# 当没有玩家在线时是否暂停进行增量备份
# 注:全量备份将照常进行。
stop-incremental-backup-when-no-player: true
# 是否采用流式压缩上传
# 注: 当服务器硬盘空间不够大时可以启用此选项,一旦启用,上传过程中文件压缩就不会额外占用多余的硬盘空间,适用于服务商限制了硬盘空间的情况
# 注: 这种方式下程序会将每块压缩文件数据暂时写入内存中的缓冲区,代价并不高。
use-streaming-compression-upload: false
# 需要进行备份的世界名,示例如下:
# worlds:
# - world
# - world_nether
# - world_the_end
# 注: 如果这个选项留空了,则本插件不会工作。
worlds: [ ]
```
[/MD]

[MD]
## 命令
这个插件目前只有一个命令:
```text
/potatosack reload
```
用于热重载插件配置文件。
### 命令权限节点
```text
potatosack.reload
```
> 💡 服务器管理员(OP)默认有这个权限。

## 小工具
### Backup Merger
上文提到过,“一组备份”包括一个全量备份和一些增量备份。在恢复服务器数据的时候,BackupMerger 可以将这些备份合并成一个完整的备份。
详见 [BackupMerger](https://github.com/Bottle-M/PotatoSack/blob/main/backups-merger/README.zh_CN.md)。
### OneDrive Token Tool
通过这个工具你可以获取到编写配置时所需的 OneDrive 的 Refresh Token。
详见 [onedrive-token-tool](https://github.com/Bottle-M/PotatoSack/blob/main/onedrive-token-tool/README.zh_CN.md)。

## FAQ
1. Q:启动时控制台怎么打印出了 404 ?
A:这往往是因为云端的文件缺失或相应目录未建立,不过不用担心,程序在遇到 404 响应后会自动建立相应文件和目录。
2. Q:备份数据存放在 OneDrive 的哪个位置?
A:`OneDrive 根目录/PotatoSack`,或者 `OneDrive 根目录/应用/<你创建的应用程序名>/PotatoSack`。当使用 OneDrive 家庭版 / 个人版,且采用 `Files.ReadWrite.AppFolder` 权限结点时,将会是后者的情况。
3. Q:为什么叫 PotatoSack?
A:因为咱服务器的性能和土豆差不多,备份数据就像扛土豆麻袋一样 (゜ー゜)。
如果还有其他问题,欢迎提出 issue。

## 开源协议
本插件采用 MIT 开源协议。
感谢你的使用 ( ̄▽ ̄)"

[/MD]
作者
SomeBottle
下载
272
查看
796
首次发布
最后更新

评分

0.00 星 0 次评分

SomeBottle 的其他资源

后退
顶部 底部