目录
简介
restic
是由 github.com/restic 用 Go 开发的数据备份工具,可以用于备份本地文件系统、云存储或远程服务器上的数据。
它支持增量备份和快照管理,备份效率高且占用的空间少,能为不同时间点的备份创建快照并按需恢复,适合需要定期备份和灾难恢复的应用场景,如服务器备份、开发者数据备份、个人文件保护等场景。
安装
eval "$(curl https://get.x-cmd.com)" # 安装 x-cmd
x env use restic # 使用 x-cmd 安装 restic
使用
- 在建立一个用于备份的存储库,如在当前目录下的 backup 目录创建存储库:
# restic init -r <repo path>restic init -r ./backup
- 备份指定文件或目录的数据到存储库中,如备份 bash 和 zsh 的相关内容:
restic backup ~/.bash_history -r ./backuprestic backup ~/.zsh* -r ./backup
- 查看存储库的备份,如查看存储库快照(每次备份的状态记录):
restic snapshots -r ./backup
- 从备份中恢复数据或删除备份:
# 使用指定快照恢复备份,如使用 67f8fefa 快照(这是我用于备份 .bash_history 数据的快照)恢复数据restic restore <snapshots Id> -r ./backup --target <target_path>restic restore 67f8fefa -r ./backup --target "$HOME"# 删除指定快照/备份restic forget 67f8fefa -r ./backup
- PS:Restic 支持使用
RESTIC_REPOSITORY
和RESTIC_PASSWORD
环境变量配置默认存储库和密码,这样可以避免使用-r
指定存储库路径和频繁输入密码。
功能特点
- 易于使用:Restic 整体打包成了单个可执行文件,无需服务器或配置即可使用。
- 备份效率高:采用块级去重和增量备份方式,仅备份上次备份后的更改内容。
- 安全性高:默认使用 AES-256 加密数据,保证备份文件即使是存储在不受信任的环境中(如云端或外部硬盘),也能保持安全。
- 跨平台:支持在三大操作系统(Linux、macOS、Windows)和一些较小的操作系统(FreeBSD、OpenBSD)上使用。
竞品和相关项目
- gobackup:一款专为应用服务器设计的备份工具,用于定期将您的数据库、文件备份到云存储(FTP、SCP、S3、GCS、阿里云OSS…)。
- skate:由 charmbracelet 团队使用 Go 开发的个人键值存储工具,适合用于存储或备份小数据和小文件,使用起来非常简单方便。
- kopia:一种快速、安全的开源备份/恢复工具,具有 CLI(命令行界面)和 GUI(图形用户界面)版本,允许您创建数据的加密快照,并将快照保存到您选择的远程存储设备或本地计算机上。
- borg:由 BorgBackup 团队用 python 开发的备份程序,使用了重复数据删除技术,且支持压缩和验证加密。
进一步阅读
- restic 源代码 - restic 项目的源代码托管在 GitHub,你可以在这里找到最新版本的 restic 和参与社区贡献。
- restic 文档 - 由官方提供的说明文档,提供关于 restic 的详细信息,包括使用说明、命令选项、示例和其他相关内容。
- Restic 访谈记录 - 其中讨论了创建 Restic 的缘由、使用以及 Restic 作者对构建和维护社区的经验分享。
更多内容请查阅 : pkg/restic
转载请标明原文链接 :https://www.x-cmd.com/pkg/restic
关注微信官方公众号 : oh my x
获取开源软件和 x-cmd 最新用法
版权归原作者 x-cmd 所有, 如有侵权,请联系我们删除。