如何在Ubuntu 12.04中配置Backuppc?


10

我想将Backuppc设置为所有远程主机的备份文件。屏幕截图的需求指南将不胜感激。

细节:

  • 所有主机都在运行ubuntu,我需要为保存在其桌面上的文件设置增量备份。

  • 需要使用Web GUI从服务器监视备份状态。


1
你看到吗?
Symin

Answers:


15

大纲

  1. 安装
  2. BackupPC Web用户
  3. 客户端连接准备-设置SSH-KEY
  4. 配置BackupPC备份客户端的/ home目录
  5. 添加客户端
  6. 备份时间表

1.安装

通过Ubuntu BackupPC软件包安装

    sudo apt-get install backuppc

这将安装BackupPC并自动配置以下内容

    Linux User   : backuppc (home directory /var/lib/backuppc)
                   BackupPC daemon will run as this user

    HTTP User    : backuppc (For web gui http login)
                   Password is located in /etc/backuppc/htpasswd (See Step 2)

    Config file location : /etc/backupc
    Data file location   : /var/lib/backuppc

    Apache will be configured
    Web Interface URL    : http://<hostname/IP>/backuppc

本指南基于上述安装方法和信息。

如果使用手动安装,请在config.pl中查找以下行

    set $Conf{CgiAdminUsers}     = '';

并更改为

    set $Conf{CgiAdminUsers}     = 'backuppc';

2. BackupPC Web用户

HTTP登录/用户备份

要在BackupPC Web界面中拥有完整的管理权限,必须先以backuppc和身份登录。(这是一样的Linux用户)。

Web界面用户(http登录)backuppc在安装过程中使用随机密码创建。如果您忘记写下密码,请htpasswd按照以下步骤进行更改

    sudo htpasswd /etc/backuppc/htpasswd backuppc

附加用户

添加其他用户

    sudo htpasswd /etc/backuppc/htpasswd <username>

在“ 步骤5添加客户端”中,将<用户名>放入moreUsers字段中。当<用户名>登录Web界面时,将仅看到分配给它们的客户端。

3.客户端连接准备-设置SSH-KEY

客户端SSHD配置

为了简单起见,客户端计算机sshd应该允许root登录。对于每个客户/etc/ssh/sshd_config,请确保存在以下选项并且未对其进行注释

    PermitRootLogin yes
    PubkeyAuthentication yes
    AuthorizedKeysFile  %h/.ssh/authorized_keys

正如scp将要使用的那样,应在所有客户端上执行此操作以加快下一步。

服务器SSH密钥的创建和部署

  1. 在服务器上,以用户身份登录 backuppc

    backuppc@server$ sudo su - backuppc
    
  2. 生成具有空通过阶段的SSH密钥对

    backuppc@server$ ssh-keygen
    

    当要求提供相位时,将其留空(按enter

    Enter passphrase (empty for no passphrase):
    Enter same passphrase again:
    

    这将在/var/lib/backuppc/.ssh中生成2个文件:id_rsaid_rsa.pub。您只需要生成一对密钥即可。

  3. 将密钥部署到客户端计算机

    复制id_rsa.pub到客户端计算机

    backuppc@server$ scp /var/lib/backuppc/.ssh/id_rsa.pub sudo-user@<client machine>:/home/sudo-user/backuppc.id_ras.pub
    backuppc@server$ ssh sudo-user@<client machine>
    
    sudo-user@client$ chmod 600 backuppc.id_ras.pub
    sudo-user@client$ sudo mkdir /root/.ssh
    sudo-user@client$ sudo chmod 700 /root/.ssh
    sudo-user@client$ sudo mv backuppc.id_ras.pub /root/.ssh/authorized_keys
    sudo-user@client$ sudo chown root:root /root/.ssh/authorized_keys
    

    测试ssh连接(在服务器上,作为Linux用户backuppc)

    backuppc@server$ ssh root@<client machine>
    

    它不应要求输入密码。

    进行测试很重要,因为这还会将客户端计算机指纹添加到backuppc(linux用户).ssh / known_hosts列表中。否则,当BackupPC(软件)(通过ssh)连接到客户端计算机时,将提示您进行指纹确认,无法处理,并且备份过程将失败。

    对所有客户端计算机重复步骤3。

    在这一点上,服务器用户backuppc应该能够以root 用户身份进入所有客户端计算机,而无需提示输入密码,指纹确认或passphase

4.配置BackupPC备份客户端的/ home目录

  1. 打开BackupPC Web GUI
  2. 在左侧面板的“ 服务器”部分,单击“ 编辑配置”。
  3. 在右侧面板上,单击“ Xfer”选项卡
  4. Xfer选项卡中,更改以下内容,然后单击顶部的“ 保存”

    XferMethod: rsync
    RsyncShareName: /home
    

    (假设仅备份用户主目录)

  5. 这将自动应用于所有客户端。

    屏幕截图

5.添加客户端

  1. 打开BackupPC Web GUI
  2. 在左侧面板的Server部分中,单击Edit Hosts
  3. 对于每台机器,在下方填写主机名或IP地址host,并始终backuppc用于user,单击Add以获取更多行。完成后,请记住单击Save顶部。
  4. 从列表中删除本地主机

    屏幕截图

    如果将dhcp用于台式机,情况将变得棘手。有几种方法可以解决此问题

    1. 配置dhcpd为其分配静态IP
    2. 更改台式机以使用静态IP
    3. 配置动态dns更新

    在任何情况下,服务器都需要能够使用IP地址或主机名一致地到达(SSH)每台客户端计算机。

6.备份时间表

  1. 打开BackupPC Web GUI
  2. 在左侧面板的“ 服务器”部分,单击“ 编辑配置”。
  3. 在右侧面板上,单击“ 计划”选项卡
  4. 无需执行任何操作,默认计划将执行

    Full Backup every 7 days (FullPeriod: 6.97 day)
    Incremental Backup everyday (IncrPeriod: 0.97 day)
    

    屏幕截图

7.添加审核界面

向BackupPC添加审核接口已指示向BackupPC添加仅审核接口。

但是,Ubuntu BackupPC软件包中的index.cgi已编译。/usr/share/backuppc/lib/realindex.cgi应该用于生成audit.cgi博客中提到的内容。


backup failed (Unable to read 4 bytes)仍然发生?
John Siu

@ karthick87我更新了步骤2以添加其他用户。
John Siu

@ karthick87服务器->编辑配置-> CGI(Tab),转到底部的“用户配置编辑”,然后删除您不希望其他用户拥有的选项的复选标记。
John Siu

@ karthick87您可以删除配置编辑权限,但是用户始终可以启动/停止/浏览/还原分配给他们的备份。如果只允许他们查看备份状态,则必须创建一个单独的网页并在后台拉出BackupPC状态。
John Siu

今晚晚些时候,我将不得不调查一下,因为我有点想念index.cgi似乎是在ubuntu包中编译的。
John Siu 2013年

1

您可以将backupPC的文件夹安装在远程PC上,并使用Ubuntu的默认备份工具将备份存储在此已安装的共享上。

或者,如果您熟悉bash脚本,则可以使用rsync编写脚本以将文件复制到backupPC上,并通过cron作业定期运行该脚本。

如果您用Google搜索“挂载网络共享”,我想您可以找到截图指南。

我通过谷歌搜索发现的是该图片指南:https ://help.ubuntu.com/community/BackupYourSystem/SimpleBackupSuite,它使用SimpleBackupSuite。从未尝试过那个。

希望能帮助到你 :-)


2
据我所知,BackupPC的想法是避免了远程安装文件系统的需要。OP并没有要求其他选择。:)
gertvdijk 2013年
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.