墙裂推荐 PDF 付费版本:《UrBackup Server 2.4.x 管理手册中文版(网管小贾高级进阶版)》

<关注网管小贾微信公众号,发送 000946 获取>

https://www.sysadm.cc/index.php/xitongyunwei/946-download-advanced-chinese-version-of-urbackup-server-2-4-x-administration-manual

此次翻译整理,并不是照本宣科,原文照搬,而是通过我大量的测试实操再结合手册中的内容做的一次大调整、大改写。

我做了以下这些事情:

  1. 修正了大量官网英文版中不通顺的语句(每个单词都认识,放一起愣不知道啥意思),使之更便于阅读、更易于理解。
  2. 根据实际场景操作添加了大量配图插画强化说明,有了图片理解起来就会很OK啊!
  3. 根据实际场景操作调整修正了部分说明内容(有部分官网内容由于版本更新问题,实际上并不准确甚至存在错误和误导)。
  4. 根据实际场景操作添加了大量官网手册中没有详细说明,甚至是压根就没提到的其他实用内容。


参考目录

  • 1 开篇介绍
  • 2 服务器安装

    • 2.1 Windows 上的服务器安装
    • 2.2 Ubuntu 上的服务器安装
    • 2.3 Debian 上的服务器安装
    • 2.4 在其他 GNU/Linux 发行版或 FreeBSD 上安装服务器
    • 2.5 GNU/Linux 服务器安装提示
    • 2.6 操作系统独立服务器安装步骤
  • 3 客户端安装

    • 3.1 Windows 客户端安装
    • 3.2 自动部署到多台 Windows 计算机
    • 3.3 Linux 客户端安装
    • 3.4 Mac OS X 客户端安装(追加内容,官网手册无此内容)
  • 4 架构

    • 4.1 服务器架构
    • 4.2 客户端架构
  • 5 安全

    • 5.1 服务端 Web 界面的权限管理
    • 5.2 让 Web 页面可通过 SSL 访问
    • 5.2.1 Apache 配置
    • 5.2.2 Lighttp 配置

    • 5.3 客户端安全

    • 5.4 传输安全
    • 5.5 广域网模式安全
  • 6 局域网中的客户端发现

  • 7 备份过程

    • 7.1 文件备份
    • 7.2 映像备份
    • 7.3 数据冲突概率
    • 7.3.1 文件备份冲突概率
    • 7.3.2 映像备份冲突概率
    • 7.4 客户端和服务器上的备份前后脚本
    • 7.4.1 客户端备份前后脚本
    • 7.4.2 服务器后备脚本
  • 8 广域网客户端

    • 8.1 自动推送服务器配置到客户端
    • 8.2 下载预配置的客户端安装程序
    • 8.3 手动添加和配置客户端
    • 8.4 通过 Internet 传输文件
  • 9 服务器设置

    • 9.1 全局服务器设置
    • 9.1.1 备份存储路径
    • 9.1.2 服务器网址
    • 9.1.3 禁止磁盘镜像备份
    • 9.1.4 禁止文件备份
    • 9.1.5 自动关闭服务器
    • 9.1.6 从更新服务器下载客户端
    • 9.1.7 当新有服务器版本可用时通知我
    • 9.1.8 自动更新客户端
    • 9.1.9 最大同时备份数
    • 9.1.10 最近活动客户端的最大数量
    • 9.1.11 清理时间窗口
    • 9.1.12 自动备份 UrBackup 数据库
    • 9.1.13 本地网络的总体最大备份速度
    • 9.1.14 全局软文件系统配额
    • 9.2 邮件设置
    • 9.2.1 邮件服务器设置
    • 9.2.2 配置报告

    • 9.3 客户端特定设置

    • 9.3.1 备份窗口

    • 9.3.2 高级备份间隔
    • 9.3.3 排除文件
    • 9.3.4 要备份的默认目录
    • 9.3.5 虚拟子客户端名称

    • 9.4 广域网设置

    • 9.4.1 数据使用限额预估

    • 9.5 高级设置

    • 9.5.1 启用临时文件缓冲区

    • 9.5.2 传输模式

    • 9.5.3 增量映像备份样式
    • 9.5.4 完整映像备份样式
    • 9.5.5 批处理期间的数据库缓存大小

    • 9.6 在增量文件备份期间使用符号链接

    • 9.7 调试:所有文件备份的端到端验证

    • 9.8 调试:使用客户端哈希验证文件备份

    • 9.9 定期将 Internet 客户端的文件条目读入数据库

    • 9.10 文件备份后为客户端上的每个用户创建符号链接视图

    • 9.11 每个客户端同时作业的最大数量

    • 9.12 映像备份期间要分组快照的卷

    • 9.13 文件备份期间要分组快照的卷

    • 9.14 Windows 组件备份配置
  • 10 恢复备份

    • 10.1 恢复镜像备份
    • 10.2 恢复文件备份
  • 11 杂项

    • 11.1 手动更新 UrBackup 客户端

    • 11.2 日志记录

    • 11.3 使用的网络端口
    • 11.4 在 GNU/Linux 上挂载(压缩)VHD 文件
    • 11.5 在 Windows 上将 VHD 挂载为卷

    • 11.6 解压 VHD 文件

    • 11.7 将多个卷 VHD 映像组装到一个磁盘 VHD 映像中

    • 11.8 迁移非 btrfs 备份存储

  • 12 存储

    • 12.1 每晚备份删除
    • 12.2 紧急清理
    • 12.3 清理具有大量备份文件的服务器
    • 12.4 清理具有 UrBackup 未知文件的存储文件夹
    • 12.5 归档
    • 12.5.1 归档窗口
    • 12.6 合适的文件系统
    • 12.6.1 Ext4/XFS
    • 12.6.2 NTFS
    • 12.6.3 btrfs
    • 12.6.4 ZFS

    • 12.7 存储设置建议

    • 12.7.1 ZFS
    • 12.7.2 Btrfs


7 备份进程

7.1 文件备份
  • 服务器检测到最后一次增量备份的时间大于增量备份的时间间隔或最后一次完整备份的时间大于完整备份的时间间隔。

    也可以根据客户端请求启动备份。


  • 备份时服务器会创建一个新目录,它将用于保存备份。

    此目录的架构是 YYMMDD-HHMM ,其中 YY 是两位数字格式的年份,MM 是当前月份,DD 是当天,以及 HHMM 表示当前的小时和分钟。

    该目录被创建于 备份路径中名称与客户端名称相同的子目录中。


  • 服务器向客户端请求文件列表构造。

    客户端则构建文件列表并报告服务器已完成。


  • 服务器从客户端下载 urbackup/data/filelist.ub

    如果它是增量备份,服务器会将新的 filelist.ub 与来自客户端的最后一个进行比较并计算差异。


  • 服务器开始传输并下载文件。

    如果备份是增量备份,则只下载新的和更改的文件。

    如果备份是完整的,则从客户端下载所有文件。


  • 服务器将文件下载到临时文件中。

    此临时文件默认位于备份存储目录中的 urbackup_tmp_files 文件夹中,亦或者,如果你在高级设置中启用了它,则位于系统临时文件夹中。

    成功下载文件后,服务器会计算其哈希值并查看是否存在具有相同哈希值的另一个文件。

    如果存在这样的文件,则假定它们是相同的,并保存为另一个文件的硬链接,同时删除临时文件。

    如果不存在此类文件,则将文件移动到新的备份位置。

    文件路径和哈希值会保存到服务器数据库中。


  • 如果备份是增量备份并且文件未更改,则会创建指向先前备份中文件的硬链接。


  • 如果备份是增量的,启用 在增量文件备份期间使用符号链接 并且包含 10 个以上文件或文件夹的目录未更改,则它将建立符号链接到上次备份中的同一文件夹。

    因为最后一个备份可能会在当前备份之前被删除,所以首先将该文件夹移动到一个池目录(客户端文件夹中的 .directory_pool ),然后从两个位置都建立链接。

    每次创建/删除指向该目录的另一个符号链接时,目录的引用计数都会增加/减少。


  • 如果客户端在备份期间脱机并且备份是增量备份,则服务器会继续创建指向先前备份中文件的硬链接,但不会再次尝试下载文件。

    无法下载的文件不会保存到服务器端文件列表中。

    如果备份是完整的并且客户端离线,则备份过程将中断并保存部分文件列表,其中包括到目前为止下载的所有文件。


  • 如果所有文件都已传输,则服务器会更新客户端备份存储位置中的 当前 符号链接以指向新备份。

    仅当客户端在备份期间未脱机时才会发生这种情况。


7.2 映像备份

服务器检测到最后一次完整备份的时间大于完整备份的时间间隔,最后一次增量备份的时间大于增量备份的时间间隔或客户端请求进行映像备份。

然后,服务器打开卷映像的客户端命令服务的请求连接。

客户端通过发送错误码或发送映像来应答。

映像是逐个扇区发送的,每个扇区前面都有其在硬盘上的位置。

客户端只发送文件系统使用的扇区。

如果备份是增量的,客户端会计算 512 kbyte 块的哈希值,并将其与之前的映像备份进行比较。

如果块的哈希值没有改变,它不会将该块传输到服务器,否则它会传输到服务器。

默认情况下,服务器将映像数据直接写入一个 VHD 文件。

如果在高级配置中启用临时文件设定,服务器首先将映像数据写入临时文件。

这个临时文件的最大大小为 1GB

超过此大小后,服务器继续启用新的临时文件。

映像数据并行写入 VHD 文件,并位于备份存储位置的客户端目录中。

VHD 文件的名称是 Image_<Volume>_<YYMMDD_HHMM>.vhd

<Volume> 为备份分区(卷)的盘符,YY 为当年,MM 为当月,DD 为当日,HHMM 则表示开始映像备份的小时和分钟。


UrBackup Server 1.4 版本开始,VHD 文件默认是被压缩的,这可以在映像备份设置中禁用。

Windows 上,没有工具可以直接挂载压缩的 VHD 文件。

有关在 Linux 上如何挂载 VHD 文件,请参见第 11.4 节。

想要解压缩映像文件以便它们可以挂载到 Windows 上,请参见 11.7 节。

压缩的 VHD 文件具有扩展名 .vhdz

VHD 文件使用正常压缩级别的 GZIP 压缩程序并以 2MB 一个区块压缩。


7.3 数据冲突概率

在本节中,我们将研究 UrBackup 备份系统认为数据相同的概率,即使它们有所不同。

这可能是由哈希冲突引起的(数据具有相同的哈希,即使数据不同)。

如果发生冲突,可能会导致文件链接错误或映像备份中的块未传输。


7.3.1 文件备份冲突概率

UrBackup 在文件重复数据删除之前使用 SHA512 对文件进行哈希处理。

相比之下,ZFS 使用 SHA256 进行块重复数据删除。

选择 SHA512 更安全,维基百科关于 生日攻击 的页面有一个 SHA512 的概率表。

根据这张表,需要 1.6 * 10(68次方) 个不同的文件(大小相同)才能达到 10(-18次方)的冲突概率。

它还指出,10(-18次方) 是常规硬盘的不可纠正误码率的最佳情况。

要拥有 1.6 * 10(68次方) 个 1KB 的不同文件,你需要 1.4551915 * 1056 EB 的硬盘空间。

因此,硬盘返回错误数据或数据在 RAM 中损坏的可能性更大,而不是 UrBackup 将错误的文件相互链接。


7.3.2 映像备份冲突概率

对于映像备份中的块也是使用 SHA256 ,它们的大小为 512 kbyte

对于两个散列,与 SHA256 发生散列冲突的几率为 1:(2(256次方)) (p = 21256)

在最糟糕的情况下,增量映像备份中有 2TB∕512kbyte = 4194304 个不同的块。

在任何 4194304 个块中发生冲突的机会(最糟的情况)是 1 - (1 -21256)(4194304次方) ≈ 3.6 * 10(-71次方)

与例如 10(-18次方) 个常规硬盘具有不可纠正位错误的概率相比,这又是低得离谱。


7.4 客户端和服务器上的备份前后脚本

UrBackup 在备份的前期和后期都会在服务器和客户端上调用脚本。

本节将列出调用的脚本和脚本参数。


7.4.1 客户端备份前后脚本

Linux 上,会在 /etc/urbackup//usr/local/etc/urbackup/ (取决于 urbackup 的安装位置)中搜索客户端前备份脚本和后备份脚本。

Windows 上,默认情况下会在 C:\Program Files\UrBackup 中使用 .bat 文件扩展名搜索它们。

Windows 上的 prefilebackup.bat 之外,你必须先创建这些脚本才能使它生效。

Script/脚本 Description/描述 Parameters/参数 On failure (return code not zero) /失败(返回非0代码)
prefilebackup 文件备份前调用(早于快照/副本的创建) 1: 0 表示完全备份,1 表示增量备份
2: 服务器令牌
3: 文件备份组
索引失败且未启动备份
postfilebackup 文件备份成功完成后调用 无参数 可忽略
preimagebackup 映像备份前调用(早于快照/副本的创建) 1: 0 表示完全备份,1 表示增量备份
2: 服务器令牌
映像备份失败
postimagebackup 映像备份成功完成后调用 无参数 可忽略


7.4.2 服务器备份后脚本

Linux 上,在 /var/urbackup/usr/local/var/urbackup 中搜索备份后脚本(取决于 urbackup 的安装位置)。

Windows 上,默认情况下在 C:\Program Files\UrBackupServer\urbackup 中搜索它们,文件扩展名为 .bat

必须先创建这些脚本才能使用它们。

Script/脚本 Description/描述 Parameters/参数 On failure (return code not zero)/失败(返回非0代码)
post_full_filebackup 在完整文件备份完成后执行 1: 文件备份路径
2: 成功为 1 ,否则为 0
3: 文件备份组
备份失败
post_incr_filebackup 在增量文件备份完成后执行 1: 文件备份路径
2: 成功为 1 ,否则为 0
3: 文件备份组
备份失败
post_full_imagebackup 在完整映像备份完成后执行 1: 镜像备份文件的路径
2: 映像盘符
3: 成功为 1 ,否则为 0
备份失败
post_incr_imagebackup 在增量映像备份完成后执行 1: 镜像备份文件的路径
2: 映像盘符
3: 成功为 1 ,否则为 0
备份失败


墙裂推荐 PDF 付费版本:《UrBackup Server 2.4.x 管理手册中文版(网管小贾高级进阶版)》

<关注网管小贾微信公众号,发送 000946 获取>


扫码关注@网管小贾,个人微信:sysadmcc

网管小贾 / sysadm.cc



暂无评论

登录并提交评论

© 2020-present 网管小贾 | 微信公众号 @网管小贾
许可协议:CC-BY-NC 4.0 | 转载文章请注明作者出处及相关链接