Rdiff-backup – Linux 本地和远程备份工具
Rdiff-backup(反向差异备份工具)是一种备份工具,可以在本地或远程将一个目录备份到另一个目录。它是一个用Python编写的强大工具,最适合 Linux。它也适用于 Windows 和 Mac OS X。用户报告说它在像 FreeBSD 这样的跨平台上运行良好。
它适用于反向增量备份的协议(即只存储与前一个备份的差异被更新到下一个),因此可以更容易和更快地恢复最近的备份。并确保获得最新的备份。此外,您可以轻松恢复文件并访问它们。
安装过程
安装过程分为两步。首先,需要安装依赖项,然后安装工具本身。安装取决于机器的类型,一种是正在使用的。本文将提供安装过程的分步指导。
系统依赖:
最新版本的 Rdiff-backup 工具需要在自己的机器上安装以下内容:-
- Python 3.6 或更高版本。
- librsync 1.0.0 及更高版本
- pylibacl(可选):支持访问控制列表*
- pyxattr(可选):支持扩展属性*
- 无密码 SSH(用于远程访问)
在Ubuntu 20.04或Debian Buster / 旧版本的 Ubuntu/Debian 上安装:
说明当前Python版本大于3.6,满足要求。如果不是这种情况,则需要在系统中安装它。运行以下命令
$ sudo apt-get update
$ sudo apt install rdiff-backup
现在,检查工具的版本:
在 CentOS 8/RHEL 8 上:
首先需要启用 COPR(Cool Other Package Repo)存储库。
sudo dnf install yum-plugin-copr epel-release
sudo dnf copr enable frankcrawford/rdiff-backup
添加存储库后,安装 Rdiff-backup 工具
sudo dnf --enablerepo=PowerTools install rdiff-backup
在 CentOS 7/RHEL 7 上:
sudo dnf install rdiff-backup
用法:
如何使用 Rdiff-backup 工具进行本地备份
我们的机器中有两个目录,一个名为source 的目录是我们存储几个文件的地方。现在想将这些文件备份到一个名为back_folder的单独目录中。(两者都在同一路径中)
现在要备份source的内容,请运行以下命令。
sudo rdiff-backup source back_folder
可以看出,目录源的所有内容都已经复制到back_folder。一个名为rdiff-backup-data 的新目录。此目录包含与备份过程相关的关键文件,例如备份日志。
要备份目录,一般命令是
sudo rdiff-backup source_dir back_dir
其中,source_dir 是要备份的目录,back_dir 是要备份文件的目录名。
从本地备份恢复数据:
假设,我们要从特定目录恢复数据,运行以下命令
sudo cp -a backup rest
其中,backup 是包含的目录,rest 是文件必须恢复到的目录。
将目录备份到远程 Linux 系统:
如上所述,需要先连接到远程系统。
- 使用 SSH 连接到远程服务器
- 在远程系统中安装 Rdiff 备份。
- 此后开始备份过程。
这两件事都是在安装过程的步骤 I 中完成的。现在我们将继续备份部分。假设有两个系统具有以下 IP
Origin Server: ip_origin
Backup Server: ip_backup
其中 ip_origin 是源服务器或远程服务器的 IP 地址,而 ip_backup 是备份服务器的 IP 地址。备份是从备份服务器完成的。因此,首先需要使用以下命令通过 SSH 连接到后台服务器:
ssh root@ip_backup
以后的病房,用下面的来备份
rdiff-backup root@ip_origin::/source_dir/ /back_dir/
这会将 source_dir 的内容备份到备份服务器的 back_dir。
我们的远程服务器的 IP 地址为 104.198.150.1,名称为 server2。要启动该过程,请在终端中写入以下内容:
ssh -i ~/.ssh/my-ssh-key server2@104.198.150.1
现在开始备份远程服务器上的目录,该目录将存储在备份服务器的 /home/var 目录中
root@abhi rdiff-backup ~/server2@104.198.150.1 varBack