Restic 配置 S3 仓库
restic 是一款 go 语言开发的开源文件加密备份工具,特点是能够将文件以快照的形式增量备份到指定的存储设备,支持本地硬盘存储、也支持远程服务器或主流的对象存储。本文参考 Setting up restic with Amazon S3 编写,通过恰当的配置,将 s3 或 s3 兼容的对象存储作为默认的 restic 仓库。
安装 restic
restic 已经被纳入各大主流 Linux 发行版的软件仓库,你可以试着用包管理器搜索/安装 restic
,windows 系统可以使用 scoop 进行安装。
也可以直接到项目主页下载对应架构的预编译二进制文件,解压放到系统的可执行路径上并赋予执行权限即可。
可以查阅官方文档获得更详尽的安装说明
准备对象存储
S3、阿里云 OSS、腾讯云 COS、Backblaze B2、Wasabi 这些都可以作为 restic 的存储端。
创建一个 bucket,配置好 access key id
和 secret access key
即可。
设置环境变量
准备一个足够安全的密码,用于加密 restic 仓库。将环境变量中的值替换成实际的对象存储信息。
$ export RESTIC_REPOSITORY="s3:https://s3.amazonaws.com/restic-demo"
$ export AWS_ACCESS_KEY_ID="AKIAJAJSLTZCAZ4SRI5Q"
$ export AWS_SECRET_ACCESS_KEY="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"
$ export RESTIC_PASSWORD="I9n7G7G0ZpDWA3GOcJbIuwQCGvGUBkU5"
注意:导入环境变量后应清理命令行的历史记录,执行命令
history -c
即可。
初始化 restic 仓库
由于上一步设置了 RESTIC_REPOSITORY
环境变量,即设置了 restic 的默认仓库,因此无需在命令中指定仓库。
$ restic init
备份文件
把当前目录下的 abc.txt
、hello.pdf
以及music
文件夹备份到仓库。
$ restic backup abc.txt hello.pdf music
查看快照
$ restic snapshots