前言
Duplicati 这个程序跟我们平时用的对象存储式的备份程序有点不太一样,对象存储备份是基于文件的形式来备份,而 Duplicati 则是基于数据块的形式来备份,就像是把一个大文件默认拆分成若干个 100KB 的小文件,然后再把这些小文件打包压缩成 50MB 的压缩包加密上传到云端。支持增量备份,而且不会造成存储浪费,每一次备份只上传修改的部分,与云端相同的部分则不需要上传。
介绍
- 免费开源:Duplicati 是免费软件和开放源代码。您甚至可以出于商业目的免费使用 Duplicati 。源代码已根据 LGPL 许可。Duplicati 在 Windows,Linux,MacOS 下运行。它需要 .NET 4.5 或 Mono 。
- 加密数据:Duplicati 使用强大的 AES-256 加密来保护您的隐私。您还可以使用 GPG 加密备份。
- 存储后端:Duplicati 可使用 FTP,SSH,WebDAV 等标准协议以及 Backblaze B2,Tardigrade,Microsoft OneDrive,Amazon S3,Google Drive,box.com,Mega,hubiC 等许多流行的服务。
- 程序特征:具有强 AES-256 加密的备份文件和文件夹。通过增量备份和重复数据删除节省空间。通过基于 Web 的界面或命令行界面在任何计算机上运行备份。 Duplicati 具有内置的计划程序和自动更新程序。
- 在线备份:Duplicati 从头开始专为在线备份而设计。它不仅数据效率高,而且可以很好地处理网络问题。例如,可以恢复中断的备份,并且 Duplicati 会定期测试备份的内容。这样一来,就可以在损坏的存储系统上检测到损坏的备份,以免为时已晚。
- 网页操作:Duplicati 由可在任何浏览器(甚至移动设备)中运行的 Web 界面配置,并且可以(如果您愿意)从任何位置进行访问。这也允许在无头机器(例如NAS(网络附加存储))上运行 Duplicati。
步骤
Duplicati 设置后台密码
注意:首次访问 Duplicati 网页后台会提示你设置后台密码,点击「Yes」会跳转到设置密码的页面。如果没留意到这个提示,也可以自己到「设置」页面勾选「密码」启用并设置密码。如果你需要为 Duplicati 后台绑定域名或者通过 Nginx 反向代理来访问,还需要勾选「允许远程访问 (需要重启)」,并在输入框中填入你的域名或者「*」允许所有域名,最后记得点击页面最下面的「保存」。
Duplicati 后台非常的简单直观,并且已经做了中文语言适配,虽然翻译的还不够完整,但是已经足够满足我们日常使用了,不会对操作造成太多困扰。
Duplicati 新增备份任务
依次点击「新增备份」「配置新备份」「下一步」
「常规」界面中,名称可以随意填写,例如:mybackup,加密方式建议保持默认 内置的 AES-256 加密方式,然后输入加密密码,这个密码非常重要务必记住了!千万别忘了!确认你能记住密码以后点击「下一步」。
「保存位置」页面主要是设置存储位置的地方,Duplicati 支持所有国外的主流云存储,国内的云存储虽然没有单独适配,但是有 S3 兼容存储模式也是可以把数据备份到国内的阿里云、七牛、腾讯云这些平台的,因为国内的云存储基本都支持 S3兼容协议。
这里我是用的微软 OneDrive 作为云存储后端的,至于为什么请自行百度谷歌搜索 OneDrive 5T 注册教程。
存储类型选择「Microsoft OneDrive v2」,服务器上的路径不输入则是根目录,当然你也可以输入「/mybackup」,授权 ID 这里需要鼠标点击文字,然后网页会弹出认证授权页面,跟着页面自动完成授权操作,然后点击「下一步」。
「源数据」是你需要备份的本地数据,这里我们勾选的是宝塔面板的数据目录「/www」,记得打叉去掉勾选「/www/server/docker」和「/www/swap」,然后勾选下一步。
- 「/www/server/docker」这个目录是 docker 程序目录,如果勾选就会出现死循环,所以需要去掉。
- 「/www/swap」 这个文件是宿主机虚拟内存,如果你没有这个文件则可以无视这句话。
「计划」这是 Duplicati 的定时备份功能,没啥好说的,界面你一看就知道咋回事,简单设置一下直接「下一步」。
需要留意的是「下一次运行时间」你可以理解为首次运行时间,「重复运行每」就是首次运行以后每天、每时、每分这些你自由发挥的备份时间。
「选项」是最后一个设置页面,主要是设定「备份保留策略」,你可以根据自己的需求设置策略,「远程卷大小」保持默认 50M 就好,最后点击「保存」。
至此我们已经创建了一个 Duplicati 备份任务,我们可以回到「首页」查看备份任务,并「立即执行」这个备份任务。还可以对刚刚对这个备份任务进行修改、导出、删除等其他操作。
Duplicati 恢复文件
至于 Duplicati 如何恢复备份的操作我在这里简单的说一下,点击「恢复文件」可以看到我们留有备份的路径,选择一个路径点「下一步」。
「选择文件」是设置你想要恢复的文件,我们可以全选恢复全部数据,也可以勾选个别文件进行恢复。
「恢复选项」是设置最后执行恢复操作时的动作,比如覆盖方式恢复,或者重命名方式恢复。一般默认即可,点击「恢复文件」。
后语
高级玩法我先简单的给大家一点启发,比如 OneDrive 有单文件 15G 的上传限制,而通过 Duplicati 备份上传的文件不受此限制,因为 Duplicati 默认的卷大小只有 50M !
写完这篇文章我得去好好休息一会儿了,太特么累了!而且我还是仅仅只写了 Duplicati 程序的安装和基本使用,想要看更多的高级玩法的同学等我后面有时间再写吧。
一些可能对你有用的参考网址:
「Duplicati 官网」 https://www.duplicati.com/
「Duplicati 文档」 https://duplicati.readthedocs.io/en/latest/
「Duplicati Github」 https://github.com/duplicati/duplicati
「Duplicati Docker」 https://hub.docker.com/r/duplicati/duplicati
请问一下,我备份本地数据的时候,没有显示www文件夹等一些文件夹,我怀疑是权限的问题,请问有什么解决方法吗
是权限问题,需要把 www 文件夹分配给 docker 的用户组和用户,或者把 www 用户添加到 docker 用户组中。至于怎么操作可以百度一下如何解决 docker 映射目录权限问题。