苹果公司(Apple)将Time Machine打造为一种简单易用的备份Mac数据的方法。 尽管OS X的系统偏好设置中出现了一些用于配置和控制Time Machine的选项,但是缺少通过GUI提供给用户的总体功能级别,并且与Apple对该服务的“开/关”思路相符。 幸运的是,该公司提供了一种通过终端控制Time Machine的更详细的方法。 这是成为Time Machine高级用户的方法!
向Time Machine实用程序问好
Time Machine的所有魔力都由tmutil或Time Machine Utility控制。 这是您可以通过Terminal访问以控制和配置服务的内容,但是,与大多数Terminal命令一样,您需要了解动词和语法,以便提供可以理解的命令说明。 您几乎需要了解的所有内容都可以在命令的手册页中找到,可以通过在Terminal中键入以下内容进行访问:
男人tmutil
另外,您也可以访问Apple Mac开发人员库中的Time Machine Utility的手册页,在终端机中进行操作时,可以在单独的浏览器窗口中查看手册。
手册页通过一系列动词,位置和正确的语法说明了命令的作用以及如何使用它。 阅读功能列表,您会看到从简单的选项(打开或关闭Time Machine)到更复杂的选项(检查是否从备份中排除了特定文件或文件夹,手动关联备份驱动器)使用新的源驱动器,然后比较两个备份以查看更改。 后一类提供的功能通常只能通过终端使用,并且在高级故障排除期间通常很有用。
启用和禁用时间机器
有些命令需要root特权,因此您需要在命令前加上sudo (“超级用户”),然后在出现提示时输入管理密码。 例如,我们将从一个简单的命令开始以禁用Time Machine。 因为该手册将其标识为需要root特权的命令,所以我们将在Terminal中键入以下内容,然后按Return键:
sudo tmutil禁用
输入管理员密码并再次按Return键后,我们将发现Mac上的Time Machine已被禁用。
排除特定的文件和文件夹
接下来,让我们尝试一些更高级的操作,例如从Time Machine备份中排除一项。 对于我们的示例,我们将在桌面上使用一个名为“ Scratch”的文件夹。我们不希望该文件夹或其内容包含在备份中。 为此,请回到Terminal并使用Time Machine Utility的“ addexclusion”动词(使用此命令时,请将目录路径替换为您自己的文件,文件夹或卷的路径):
tmutil addexclusion“ / Users / TekRevue / Desktop / Scratch”
在Time Machine System Preference窗格中,这很容易做到,但是这是Terminal命令更强大的示例:使用上面的命令,Time Machine将使用与位置无关(或“粘滞”)的方法来排除识别的文件或文件夹。 这意味着,如果我们运行上述命令,然后将Scratch文件夹移动到Mac上的另一个位置,则在Time Machine备份期间仍将其排除在外。
如果只想排除特定位置的项目,则可以在命令后附加一个选项,以告知Time Machine使用固定路径排除方法。 在我们的示例中,Scratch文件夹用于我们不太可能保存的临时项目。 但是,如果我们改变主意并将文件从Scratch移出到“文档”文件夹,我们仍然希望备份该文件。 这是固定路径排除方法的理想情况。 要启用此功能,我们将输入与上述相同的命令,并添加选项。 请注意,这需要root特权,因此我们还将使用sudo前缀:
sudo tmutil addexclusion -p“ /用户/ TekRevue /桌面/临时”
如果我们改变主意,可以简单地重新运行命令并将“ addexclusion”替换为“ removeexclusion:”
tmutil removeexclusion“ /用户/ TekRevue /桌面/从头开始”
查看随时间变化的日志
您还可以使用Time Machine实用工具查看和分析使用情况以及随着时间的变化。 “ calculatedrift”命令查看每个Time Machine快照并计算文件大小的差异:备份期间添加了多少数据,删除了多少数据以及更改了多少数据。 要获取此信息,请键入以下命令(请注意,根据Time Machine备份的内容,您可能需要此权限,也可能不需要此权限):
tmutil计算值
键入或最好拖放Mac的Time Machine备份位置的位置,以代替上方括号中的占位符。 请注意,这不是顶级的Backups.backupdb文件夹,而是单个Mac的位置,默认情况下该位置位于下一级。 在我们的例子中,我们的Time Machine驱动器被适当地标记为“ Time Machine”,而我们的Mac被标记为“ iMac”,因此我们键入:
tmutil Calculationrift“ /卷/时间机器/Backups.backupdb/iMac”
此命令的输出可能需要很长时间,具体取决于您拥有多少快照以及Time Machine驱动器有多快。 完成后,您将获得有关每个快照期间的更改的单个报告以及有关所有快照的平均更改的最终报告。
将新驱动器与现有的Time Machine备份相关联
Apple将Time Machine配置为使用唯一标识符(UUID)标识源驱动器,该标识符是在格式化驱动器并创建新文件系统时分配的。 Time Machine不会将新驱动器增量备份到一组现有快照。 启用后,它将创建一个单独的备份点并重新备份所有内容。 例如,如果将外部Time Machine驱动器连接到另一台计算机,这通常可以很好地工作,并且有助于防止重要的Time Machine数据在驱动器之间混淆。
但是,如果Mac的系统驱动器开始出现故障,然后将数据克隆到新驱动器上怎么办? 或者,如果您刚刚从Time Machine备份中还原了新Mac,该怎么办? 在这两种情况下,大多数用户都希望继续使用现有的Time Machine备份而不是从头开始,但是由于任何新的或重新格式化的驱动器都有不同的UUID,因此Time Machine无法识别它。
要解决此问题,您可以使用“ associatedisk”命令将Time Machine备份与新驱动器手动关联。 首先,浏览到您的Time Machine备份驱动器并找到最新的快照,该快照应位于/Volumes//Backups.backupdb//Latest/。
接下来,打开Terminal,键入以下命令,然后按Return键。 使用上面的“快照卷”路径和新的或新格式化的驱动器的路径作为“源:”
sudo tmutil关联的isk“”“”
在我们的iMac示例中,命令为:
sudo tmutil relatedisk“ /卷/系统”“ /卷/时间机器/Backups.backupdb/iMac/系统”
您需要输入管理员密码,但是这样做之后,您会发现Time Machine现在对待新驱动器的方式与旧驱动器完全相同,并且备份将是增量备份,而不是从头开始的完整备份。 这样既可以节省时间,又可以访问和还原较旧的数据。
继续探索
还有更多的Time Machine Utility功能和命令可供探索,请查看手册页以获取更多信息。 您还可以将这些命令与AppleScripts结合使用,以创建几乎可以想到的任何自定义工作流程。
Apple可能使Time Machine看起来很简单,但是通过在终端中使用tmutil进行一些试验,您可以释放其真正的力量。