Minecraft服务器备份/版本控制的Git替代方案
目前,我的Minecraft服务器位于CentOS服务器上,使用Git作为版本控制和“灾难管理”的手段。除了两个问题外,这一点非常有效:Minecraft服务器备份/版本控制的Git替代方案,git,bash,scripting,backup,minecraft,Git,Bash,Scripting,Backup,Minecraft,目前,我的Minecraft服务器位于CentOS服务器上,使用Git作为版本控制和“灾难管理”的手段。除了两个问题外,这一点非常有效: 它很大。因为服务器有一个中央存储库、主分支(服务器实际运行在其上)和测试服务器分支,每个分支都包含所有已提交的更改,这将使SSD无休止地充满(使用了过去1.5个月的大约70GB容量) 很慢。在objects目录中存储了如此多的数据之后,提交、推送和拉取都很慢,因为它试图压缩/解压和解析所有这些数据 我正在寻找一种解决方案,使Git在这个应用程序中更加有效,或者
- 增量备份—我不必每次备份时都保存整个8GB未压缩/2GB压缩服务器李>
- Cherry pick restoration-我需要能够轻松地恢复服务器的某些部分(例如特定的插件配置,而无需恢复人们对主世界的更改)
- 能够将项目克隆到家庭计算机上进行异地备份和测试
- 能够为测试服务器创建分支,以便在推出不稳定的功能之前尝试这些功能
.
|-- plugins
|-- SomePlugin
|-- config.yml
|-- SomePlugin.jar
|-- world
|-- region
|-- (binary files of chunks, a 2000x2000 world is often 1GB in size)
|-- mcmmo_data (third party plugin)
|-- x coordinate
|-- y coordinate
|-- small flatfile
|-- level.dat
|-- stuff.txt
|-- properties.yml
|-- server.jar
有什么想法吗?
< P>一个选项,你可以考虑,为了存储二进制/大文件,它是用于管理Git内部的大对象的。它可以让您签入那些巨大的文件,而不会使中央git数据库本身变得混乱。但是,这需要重新思考如何处理这些文件,让它们随着时间的推移而改变。它确实有一个很好的推/拉/备份组件,可能工作得很好,但您会遇到其他需要处理的“新思维方式”。当然,请先在测试系统上试用。git服务器的硬件参数……4核AMD推土机(3.6-3.8GHz);8GB内存;128GB固态硬盘;CentOS 6.3 x86_64Git将存储生命周期历史记录,您真的想要吗?如果不是,备份程序会更合适(比如Amanda)。@Hovanesyan我们不一定要最新版本的插件,而是要在我们的服务器上运行的版本。此外,许多插件不支持Maven。我使用rdiff backup
进行类似的操作(这不是Minecraft,但我所做的场景与您所做的非常相似)。这样做的好处是,您可以告诉它删除所有早于某个时间间隔的备份,并尽可能使用增量存储来减少空间使用。