如何在 Linux 上使用 BackupPC 来架设跨平台的备份服

也许你没有从我先前关于 backupninjabackup-manager 的两篇文章中发现,我是一个超级备“粉”。当提到备份,我宁愿备份的太多而不希望备份不足,因为如果我们有需要的话,你将会感激你为重要数据生成额外的拷贝所付出的时间和精力。

在这篇文章中,我将向你介绍 BackupPC,一个跨平台的备份服务器软件,它可以通过网络为 Linux,Windows 和 MacOS 等系统上的客户端主机拉取备份。BackupPC 添加了一系列的特点使得管理备份变为一件快乐的事。

如何在 Linux 上使用 BackupPC 来架设跨平台的备份服

BackupPC 的特点

BackupPC 自带有一个健壮的 Web 界面,允许你以集中化的方式来收集和管理其他远程客户端主机上的备份。通过使用它的 Web 界面,你可以检查日志和配置文件、为其他远程主机启动/取消/安排备份任务以及可视化备份任务的当前状态。你也可以非常容易地浏览归档的文件以及从备份的归档中恢复单个文件或整个备份。要恢复单个文件,你可以直接通过 Web 界面来下载任何先前备份的文件。不仅如此,客户端主机并不需要安装特别的客户端软件。在 Windows 客户端上, 使用的是原生的 SMB 协议,而对于 *nix 客户端,你将使用 rsync 或 通过 SSH, RSH 或 NFS 来使用 tar 。

安装 BackupPC

在 Debian,Ubuntu 和它们的衍生版本上,运行下面的命令:

# aptitude install backuppc

Fedora上, 使用 yum 命令。请注意软件包名字对大小写敏感。

CentOS/RHEL 6 上,首先要启用 EPEL 软件仓库。在 CentOS/RHEL 7 上,请替代启用 Nux Dextop 软件仓库。然后接着使用 yum 命令:

# yum install BackupPC

同往常一样,这两种包管理系统都会自动解决依赖问题。另外,作为安装过程中的一部分,你可能需要新配置或修改配置用于图形用户界面的 Web 服务器。下面的截图来自于 Debian 系统:

如何在 Linux 上使用 BackupPC 来架设跨平台的备份服

通过空格键来确定你的选择,然后使用 tab 键移动到 Ok 选项并敲回车键。

接着类似于下面的截屏将会呈现在你眼前,通知你创建了一个用来管理 BackupPC 的名为 ‘backuppc’的管理员用户以及相应的密码(如果你需要,这个密码以后可以更改)。这里需要注意的是:这里创建了同样名为 ‘backuppc’的 HTTP 账户和常规的 Linux 账户,它们使用相同的密码。需要前者的目的是来访问受保护的 BackupPC 的 Web 界面,而后者则是为了通过 SSH 来使用 rsync 来执行备份任务。

如何在 Linux 上使用 BackupPC 来架设跨平台的备份服

你可以使用下面的命令来更改 HTTP 账户 ‘backuppc’ 的默认密码:

# htpasswd /path/to/hash/file backuppc

至于常规的 ‘backuppc’ Linux账户,可以使用 passwd命令来更改它的默认密码:

# passwd backuppc

需要提及的是:安装过程中会自动创建 Web 和程序的配置文件。 

启动 BackupPC 并设置备份

首先,打开一个浏览器窗口并指向 <服务器名称或 IP 地址>/backuppc/ 。当弹出提示框时,输入先前向你创建的默认 HTTP 用户凭据(注:即用户名 backuppc 和相应的默认密码)。假如认证成功,你就会被带入到 Web 界面的主页:

如何在 Linux 上使用 BackupPC 来架设跨平台的备份服

你想做的第一件事最有可能是通过新增一个客户端主机来备份。进入任务窗格中的 “编辑主机”选项。我们将添加两个客户端主机:

Host #1: CentOS 7 [IP 192.168.0.17]

Host #2: Windows 7 [IP 192.168.0.103]

我们将通过 SSH 使用 rsync来备份 CentOS 主机,使用 SMB 来备份 Windows 主机。在执行备份之前,我们需要向我们的 CentOS 主机设置 基于密钥认证 以及在我们的 Windows 主机中设置一个共享目录。

下面是关于如何为一个远程 CentOS 主机设置基于密钥认证的指导。我们创建 ‘backuppc’ 用户的 RSA 密钥对,并将其公钥传输给 CentOS 主机上的 root 账户。

# usermod -s /bin/bash backuppc

# su - backuppc

# ssh-keygen -t rsa

# ssh-copy-id root@192.168.0.17

当弹出提示框时,键入 yes 并为 192.168.0.17 键入 root 用户的密码:

如何在 Linux 上使用 BackupPC 来架设跨平台的备份服

你需要一个远程的 CentOS 主机的 root 权限,以获得在该主机中的文件系统中写权限,以防要恢复的备份文件或目录的所有者为 root 账户。

内容版权声明:除非注明,否则皆为本站原创文章。

转载注明出处:https://www.heiqu.com/32968236be4628f9700ce85346860d5a.html