使用 WHS 进行 Mac Time Machine 备份

Mar*_*ard 4 mac time-machine osx-leopard windows-home-server

有没有人想出一种方法,让 Windows Home Server 用作 Leopard 的 Time Machine 备份存储库,而无需在 Mac 机器上安装任何其他软件?新的 HP Media Smart 将此作为附加值功能,我非常希望在我自制的 WHS 盒上拥有此功能,而无需花钱购买新的 HP 机器并迁移我的所有数据。

Windows Home Server 使其卷可用作标准 Windows 文件共享 (smb)。

Mar*_*ard 6

感谢MrTomahawktptech为我指明了正确的方向。事实证明,这有几个技巧。有关更多信息,请参阅以下内容:

基本上,您首先在 WHS 上创建共享以供 Time Machine 备份使用。我称我的为“macbackup”,并授予我的用户对该文件夹的完全权限并将其设置为复制,以便我对其进行冗余备份。

接下来,在 Mac 上打开一个终端窗口并打开魔法首选项

defaults write com.apple.systempreferences TMShowUnsupportedNetworkVolumes 1
Run Code Online (Sandbox Code Playgroud)

现在,使用 Finder 在 Windows Home Server 上装载共享。

回到终端窗口,您现在必须创建一个稀疏包文件。查看上面的链接以获取更多信息,但基本上您键入如下命令

hdiutil create -nospotlight -library SPUD -size [size_in_gigs]g -fs HFS+J -type SPARSEBUNDLE -volname "Backup of [hostname]"  -verbose [hostname]_[mac_addr].sparsebundle
Run Code Online (Sandbox Code Playgroud)

将 [size_in_gigs] 替换为要限制时间机器使用的大小,将 [hostname] 替换为 mac 的机器名称,将 [mac_addr] 替换为要用于 bacup 的接口的 mac 地址(通常是 eth0)通过 wifi 备份需要一段时间)

我使用了类似以下命令的东西:

hdiutil create -nospotlight -library SPUD -size 250g -fs HFS+J -type SPARSEBUNDLE -volname "Backup of martinmbp" -verbose martinmbp_002332c5437e.sparsebundle
Run Code Online (Sandbox Code Playgroud)

然后使用类似的东西将其复制到已安装的共享

cp -r [hostname]_[mac_addr].sparsebundle /Volumes/mackbackup/.
Run Code Online (Sandbox Code Playgroud)

现在,转到“系统偏好设置”、“时间机器”并选择“更改磁盘”。如果这是您的第一次备份,请选择您已将 .sparsebundle 复制到的 WHS 共享,然后离开很长时间。

似乎对我有用。如果我发现任何问题,我会报告并编辑此答案。里程可能会有所不同,因为 Apple 显然出于某种原因将这个功能排除在外,我假设这是一项技术性的功能,而不是销售更多 Time Capsule 的策略,所以我们会看看会发生什么。

更新:

到目前为止已经使用了几天,似乎工作正常。几个警告:

  1. 如果您在执行备份时让机器进入睡眠状态,则会报告问题。我这样做是为了测试,但在卸载备份卷时遇到了麻烦。最后,我不得不重新启动机器以释放对导致问题的任何文件的锁定。
  2. 尝试使用系统 CD 从 Time Machine 备份还原时出现问题。因为您必须设置首选项才能让机器选择不受支持的设备(如 Windows Home Server 共享),所以不清楚您是否可以从没有设置首选项的系统 CD 恢复整台机器。就我个人而言,我保留了一些完整的映像备份,可以从外部磁盘恢复,因此希望这对我来说不会成为问题 - Time Machine 的东西实际上只是增量备份。但是我仍然需要测试恢复过程

目前我不清楚 HP WHS 服务器提供的解决方案是否也存在这些问题,或者即使它们只是 Time Machine 的一般怪癖。