把 git 作为电脑系统备份的一个方案?

2023-06-14 10:59:38 +08:00
 289396212
假设有系统备份的需求,大家有没有想过,无论 win/mac/linux 系统的电脑,在根目录下 git init ,把整个磁盘作为一个 repo ,可以写个脚本每天自动 git commit,然后 push ,备份系统
6269 次点击
所在节点    程序员
61 条回复
nicreve
2023-06-14 11:04:10 +08:00
就算用 Git LFS ,空间占用和性能估计也很差。
zgqq
2023-06-14 11:06:00 +08:00
快照应该比你这种方式好 10 倍吧
crayygy
2023-06-14 11:10:31 +08:00
可以试试看,不需要用 root folder 测试,找一个有大量小文件并且会经常有 change 的目录,然后就知道 git 不是用来干这个事情的了。
kaiger
2023-06-14 11:11:02 +08:00
git 备份一些配置文件是极好的

git --work-tree=$HOME --git-dir=$HOME/.dotfiles.git
aptupdate
2023-06-14 11:14:23 +08:00
理论上应该可以,不过得考虑到空间占用和性能问题。。。
但是为啥要用 git 呢,传到 GitHub 上?
备份系统有更好的方案,哪怕是把备份出来的快照传到 git 上。
cheng6563
2023-06-14 11:21:48 +08:00
不如 svn
xiangyuecn
2023-06-14 11:22:28 +08:00
你猜会不会有奇怪的目录 和 文件
deplivesb
2023-06-14 11:24:11 +08:00
git 对大量的小文件的性能是很差的
realpg
2023-06-14 11:31:39 +08:00
我这有 80 块 18T 硬盘 你要不要买点?估计一年就差不多了
HannibaI
2023-06-14 11:35:07 +08:00
XY
yinmin
2023-06-14 12:11:36 +08:00
windows 最简单的备份是用“文件历史记录”,Mac 最简单的备份是用“时间机器”,可以配置成每小时差异备份一次,将文件备份给另外一台机器的共享目录上。
LindsayZhou
2023-06-14 12:17:38 +08:00
我 pull 过 linux kernel 的代码,也自己做过它的镜像,从这个经验来说,绝对不值得。

要实现类似的增量备份和回滚,推荐 restic
TsubasaHanekaw
2023-06-14 12:20:53 +08:00
ntfs 系统有卷影备份.
yrj
2023-06-14 12:22:07 +08:00
上次看到个帖子,和你一样的想法
zengxs
2023-06-14 12:22:59 +08:00
git 会把你的文件的每一个版本都保留在他的库里,已有的文件也会在库里保留一份副本,你这么搞过几天你磁盘就爆了(说不定不用几天,你磁盘占用已经超过一半的话,第一次执行 git add 的时候就爆了
colodes
2023-06-14 12:24:20 +08:00
ostree 、不可变发行版了解一下
duke807
2023-06-14 12:27:35 +08:00
我朋友一直用 git 备份 gentoo 系统的 /etc 目录
Leon6868
2023-06-14 12:29:16 +08:00
@realpg 多少钱一块
yolee599
2023-06-14 12:53:15 +08:00
git 对二进制文件好像是完整拷贝保存的?改动一个字节就得复制一份,这就需要很大的磁盘空间了,电脑备份这种场景要差分保存才合理
0o0O0o0O0o
2023-06-14 12:56:41 +08:00
Linux 很多用 git 管理 dotfiles 的

borgbackup 的逻辑也很像 git

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/948590

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX