首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >将整个300 GB的文件系统添加到Git附件存储库中?

问将整个300 GB的文件系统添加到Git附件存储库中?
EN

Server Fault用户
提问于 2012-10-21 21:27:04
回答 2查看 1.6K关注 0票数 2

默认情况下,我得到一个错误,即我从进程中打开的文件太多了。如果手动取消限制,就会得到内存不足的错误。不管出于什么原因,Git附件在当前状态下似乎没有为这类任务进行优化(同时将数千个文件添加到存储库中)。

作为一种可能的解决办法,我的下一个想法是做这样的事情:

代码语言:javascript
复制
cd /
find . -type d | xargs git annex add --$NONRECURSIVELY
find . -type f | xargs git annex add
    # Need to add parent directories of each file first or adding files fails

这个解决方案的问题是,文档中似乎没有一种非递归地在Git附件中添加目录的方法。有什么东西是我错过的或者是一个解决办法吗?

如果我提出的解决方案是死胡同的话,人们还有其他办法解决这个问题吗?

EN

回答 2

Server Fault用户

回答已采纳

发布于 2012-10-29 22:38:22

小更新:

  1. 整个问题完全是用户错误。我的根驱动器是256 GB的SSD,而我试图添加到1.5TBRAID 1数组的文件夹之一。无论我如何尝试完成这一任务,它都会不可避免地尝试将更多的文件复制到/.git文件夹中,而不是驱动器可以容纳的文件(duh)。不知道我以为会发生什么。
  2. 这就是为什么你不乱搞系统目录..。
  3. 在1.5TB驱动器上初始化Git附件存储库,然后复制我想要备份的根级目录。正常的git annex add .工作得非常出色,我的存储库在过去的五天里一直在使用这些附件-冰川钩来支持冰川,几乎没有什么问题。
票数 1
EN

Server Fault用户

发布于 2016-02-15 06:23:14

我使用附件来管理主机,如:

  • 在/var/附件下创建git附件repo
  • 在/var/附件中,为每台机器都有一个子var-这是文件到该机器的唯一位置。例如,/var/annex/mars.example.com/etc/default/krb5-kdc
  • 为站点特有的文件创建另一个通用目录,例如/var/附件/example.com/etc/annex
  • 使用gnu stow管理/指向/var/附件/*中的所有符号链接
  • 在运行gnu stow和git附件的/var/附件/example.com /usr/local/bin /中有一个简单的脚本(上面提到的脚本当然都被符号链接到/usr/local/bin中)。

这一切都像一个低速的、分布式的、“管理文件系统”,具有版本控制、暂存,以及您想要在如何使用git和git附件时进行的任何制衡。

如果您正在理智地管理您的机器,则不需要签入整个根文件系统--大多数都不会因机器而异。您确实需要有某种方法来管理包的安装和升级,但是这个工具本身可以被签入附件,以及它用作源数据的包和其他blobs -同样,所有版本都是git提供的。

票数 1
EN
页面原文内容由Server Fault提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://serverfault.com/questions/440769

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档