在Windows上使用Rsync为3CX备份和录音创建冗余备份

在最近的文章中,我们展示了如何使用Linux Rsync实用程序为备份和录音创建冗余备份。如果将3CX备份和存档的录音保留在Windows上,则可以通过利用“ 适用于Linux的Windows子系统”(WSL)选项享受同样的灵活性。启用此选项可让您直接从Windows Powershell命令提示符启动Linux命令外壳,然后启动rsync实用程序。继续阅读以了解如何执行此跨平台技巧。

启用适用于Linux的Windows子系统(WSL)

要在Windows上使用rsync,您需要启用WSL:

在Windows 10上:

  • 转到“控制面板”>“程序”>“程序和功能”
  • 单击“启用或关闭Windows功能”,然后向下滚动以启用“ 适用于Linux的Windows子系统”选项。
  • 单击“确定”,并在出现提示时重新启动PC。

在 Windows Server 2019上

该过程可以用一个命令执行。 以管理员身份打开PowerShell命令提示符,然后:

  • 运行此命令:Enable-WindowsOptionalFeature -Online -FeatureName Microsoft-Windows-Subsystem-Linux
  • 出现提示时,请重新启动计算机,以确保WSL可以启动受信任的执行环境。

重新启动Windows计算机之后,WSL将可用于此目的。

确保所有备份的安全

现在,在Windows计算机上启用了Windows Linux子系统(WSL)后,您就可以使用rsync并镜像3CX备份和录音了。请记住,您需要一个目标主机,即以便宜的价格安装运行rsync服务的Linux计算机NAS(网络附加存储)设备

以Windows管理员身份打开命令提示符,然后执行以下操作:

  • 更改为您的3CX备份或存档录音文件夹,例如:

cd c:\Users\PBXadmin\3cx_backups

  • 在当前命令提示符下运行Linux bash shell:

Bash

  • 通过从Windows主机以测试运行模式(–dry-run)运行rsync,验证rsync在两台计算机上均可用。 确保您对源目录和目标目录都具有适当的用户权限:

rsync --dry-run -avr /mnt/c/Users/PBXadmin/3cx_backups 3cxrsync@rsyncsrv.example.com:/home/3cxrsync/redundant_backups

  • 系统将提示您输入目标计算机上用户的密码,以测试rsync传输。 提供密码以执行rsync测试运行并验证传输大小和相关统计信息。

遵循上面示例中提供的命令语法“ rsync [options] [source] [destination]”,并注意:

  • 选项链接为“ –dry-run -avr”,即“ –dry-run”用于测试运行,“ a”用于存档模式,“ v”用于详细操作,“ r”递归到源目录。
  • 源目录位于Windows机器上,已转换为Linux路径,并安装在“ / mnt”下,例如 “ / mnt / c / Users / PBXadmin / 3cx_backups”。
  • 目标目录,例如 “ / home / 3cxrsync / redundant_backups”位于Linux rsync机器上,例如 “ rsyncsrv.example.com”,可由指定用户访问,例如 “ 3cxrsync”。 如果您需要在Linux主机上创建目录,请使用“ mkdir”命令,例如 “ mkdir backups”。
  • 请注意,rsync传输可以配置多种选项,例如 “ -o”和“ -g”保留对已传输文件的所有者和组权限。 添加“ z”表示在传输期间进行压缩,而“ –progress”则在文件传输期间提供状态更新。 您可以通过运行以下命令详细研究所有rsync选项:

rsync --help

将3CX数据从Windows镜像到Linux

验证rsync在两台计算机上均可以工作后,您可以继续镜像3CX数据。 根据以下示例构造rsync命令:

rsync -navzhr /mnt/c/Users/PBXadmin/3cx_backups 3cxrsync@rsyncsrv.example.com:/home/3cxrsync/redundant_backups

确保更新所有路径,用户和主机规范以适合您的网络环境参数。 完成3CX备份的传输后,您可以对存档的录音重复此命令,并根据需要更新传输的源和目标。

恭喜你! 现在,您可以通过rsync保持3CX PBX的安全,将备份和已归档的录音从Windows镜像到Linux。