我正在使用 rsync 从远程 FTP 备份到本地计算机。
我在互联网上读到 rsnapshot 更好。
只想知道生产环境用的是哪个
我的实验室正在为我们小组正在进行的项目设置一个小型服务器,该服务器保存数据(主要是视频和图像数据,以及一些文档)。从历史上看,在一个研究项目结束后,数据最终会被随意地存档在一个硬盘驱动器中,或一大堆 DVD(或过去的 CD)中,和/或一些视频最终被保存在 Sony DV 磁带中,甚至VHS 磁带(该实验室自 90 年代初以来一直活跃),或以上所有内容的混合...
问题:(1) 将它们全部整合到相同格式和存储介质中的最佳方法是什么,以及 (2) 长期存档此类数据以供偶尔访问(例如 30 多年?)的最佳介质是什么?不幸的是,我们没有企业级预算(我们只是一个约 10 人的实验室),因此无法做花费数十万美元的事情。
谢谢!
PS 考虑到我们的旧视频和图像的分辨率较小,但最近的分辨率很大,我认为我们谈论的是真正旧数据的 30~40 TB,最近数据的另外 10~20 TB,然后每年增加约 5 TB .
将真实驱动器备份到 VHD 非常容易,例如 在 XP 上使用 Sysinternal 的Disk2VHD或在 Windows 7 上使用 Windows 映像备份。但我如何复制该文件?
可以通过启动恢复 CD 或 Windows 安装 DVD 来实现。但是它也可以从正在运行的操作系统中完成吗?可以脚本化吗?
我们想每天使用它将驱动器克隆到另一个驱动器。
我在不同的提供商处运行 2 个 LAMP Web 服务器以用于灾难恢复目的 - 一个高功率的实时服务器和一个低功率的备份服务器。
目前我每 4 小时将所有数据从实时服务器同步到备份服务器。
这可以正常工作,但是在 rsync 确定哪些文件已更改时会增加系统负载。
由于所有网站都位于 git 存储库中,我想知道 git push 是否是更好的备份技术。
我必须在 git repo 中包含实时上传文件夹;然后备份过程将是:
live$ git add .
live$ git commit -a -m "{data-time} snapshot"
live$ git push backup live_branch
Run Code Online (Sandbox Code Playgroud)
然后在备份服务器上有一个提交后挂钩,以便在每次推送时进行结帐。
每个网站的大小从 50M 到 2GB 不等。我最终会得到大约 50 个单独的 git 存储库。
这是比rsync“更好”的解决方案吗?
谢谢!
---- 一些对比测试的数据 ------
1)52MB文件夹然后添加一个新的500k文件夹(主要是文本文件)
同步
sent 1.47K bytes received 285.91K bytes
total size is 44.03M speedup is 153.22
real 0m0.718s …Run Code Online (Sandbox Code Playgroud) 随着 btrfs 本月在 Oracle EL 14 日投入生产(连同工作 fsck 和从 Linux 3.2 擦洗),我正在考虑重新设计我当前的备份解决方案以利用它。请注意,我正在考虑为小于 10TB 的少量数据执行此操作,这是相当静态的(每天更改少于 1%)。简而言之,SMB/SOHO 备份解决方案。
备份应该做什么:
rsync/transfer 更改的数据到备份服务器上的 btrfs优点:
问题:
rsync解决方案吗?我使用 rsnapshot 为我的“工作”共享创建每小时/每天/每周/每月的备份。现在我正在尝试使用 rsync 将整个备份目录复制到外部驱动器上。
我在屏幕会话中使用了这个命令/参数(是的,rsync-exclude.txt 位于我运行命令的目录中)
rsync -avzHP --exclude-from 'rsync-exclude.txt' /share/backup/ /share/eSATADisk1/backup/;
Run Code Online (Sandbox Code Playgroud)
整个东西在QNAP TS-439上运行,内部驱动器是一个格式化为EXT4的单盘(无RAID),外部驱动器是格式化为EXT3。
发生的情况是:Rsync 跟随每个硬链接并且 复制实际文件,而不是在外部驱动器上重新创建更新的硬链接。我没有立即意识到这一点,因此外部驱动器最终被相同文件的 xxx 副本丢弃。
我想要实现的是:将 rsnapshot 生成的整个文件结构复制到外部驱动器,保留硬链接以节省空间。注意:这不一定是使用 rsync 完成的。
感谢您的想法和时间。我很感激你的帮助,很重要。
更新:我了解到,rsnapshot 不使用符号链接,它使用硬链接,所以我现在使用 -H 选项,它应该根据Rsnapshot 保留硬链接结构到多个目的地(或维护硬链接结构),但它仍然不起作用......我在这里错过了什么?
更新 2:我在这里找到了关于这个主题的另一个意见/声明:rsync with --hard-links freezes Steven Monday 建议不要尝试 rsync 包含硬链接的大文件结构,因为它会占用大量内存,这对 rsync 来说是一项艰巨的任务。所以可能更好的解决方案是制作我要备份的数据结构的 .img。你怎么认为?
除了定期的现场备份(保存在防火保险箱中)之外,我们还每月一次将磁带发送到场外,并使用 AES 加密。因此,如果我们的站点有一天被外星热射线蒸发了,我们至少应该有一个最近的备份来恢复。
除了 128 位加密密钥仅存储在现场。因此,在真正发生灾难的情况下,我们实际上会留下一个加密备份,而无法对其进行解密。
问题:异地存储加密密钥的最佳策略是什么?
我们选择的任何方法都需要通过安全审核,所以“在家里保留一份副本”是不够的,而“将其与异地磁带一起保留”显然违背了首先加密它们的目的!我们正在考虑的几个选项包括:
当然,第二个选项带来了另一个问题:我们如何保持该密码的安全。
您在生产环境中为 linux 服务器使用哪些备份解决方案?你更喜欢开源产品还是商业产品?
您认为备份软件的基本功能是什么?
您不推荐哪些产品?备份软件选择有哪些常见的陷阱?
我们正处于大部分网络的 P2V 中间,所以当前的备份方法可能是最糟糕的 - 备份代理仍然安装在来宾操作系统上,并且备份设备尽职尽责地将它们拉到磁带上,一个文件位于一个时间。
我怀疑有一种聪明的方法来编写脚本(PowerShell?)挂起虚拟机,然后备份 .vhd 文件,并取消挂起虚拟机。这似乎会提供很大的速度优势,同时会丢失文件级还原(可能最适合 DC 和应用服务器之类的东西)。
你制定了哪些方法/政策?
您推荐使用 Amazon S3 作为日常备份的占位符的软件是什么?
我需要它完全自动化,并且易于恢复数据。