如何移动标记为备份的文件或目录?


1

我正在尝试将一些文件从我的Time Machine备份移动到Time Machine中用于外部驱动器(Time Machine文件夹之外)的新位置。我想这样做(而不是仅仅从原始文件复制)主要是为了保留所有硬链接,不仅仅是在我正在移动的目录下的文件之间,还包括以前的备份,所以我只维护所有内容的单个副本。另外,我没有足够的可用空间来制作额外的实际副本!但是当我尝试从Finder移动文件夹时,我收到错误: “由于无法修改备份项,因此无法完成操作。”

当我尝试从命令行使用时 mv 我收到错误: mv: rename [...] to [...]: Operation not permitted

我读 这个问题 在答案中,有人解释说“旁路”实用程序应该“允许您提供命令和参数以完全绕过访问限制。”

然而,虽然我发现这与...一起工作 rm 命令,尝试移动目录时失败并出现与上述相同的错误。

更新:如果我输入源和目标的完整路径,它似乎可以工作。但即使它位于备份目录之外,系统仍然知道它是一个“备份”文件,导致尝试将其用作普通文件时遇到麻烦。如何摆脱“备份”位或任何使系统认为它是备份的东西?


1
这不是一件安全的事情。对备份文件的任何修改&文件夹结构可能会导致备份损坏。如果您链接到备份文件&文件夹,并修改那些,你 修改备份文件&文件夹,因为它们是相同的文件和文件夹,只链接在不同的名称/父文件夹下。如果需要修改它,则需要复制。
Gordon Davisson

1
请记住,TM最终可能会注意到其备份中的文件已消失,然后再次备份。不确定是否是这种情况,但我认为这是可能的。也许你可以解释一下你希望从外面移动它们会得到什么?也许还有另一种方式。
Thomas Tempelmann

Answers:


1

如果使用“终端”命令在TM备份中列出文件 ls -l@,你会看到它有扩展属性:

$ ls -l@ "iTunes Library Genius.itdb"
-rw-r--r--@ 22 admin  501  94208 Sep 17  2013 iTunes Library Genius.itdb
    com.apple.metadata:_kTimeMachineNewestSnapshot     50 
    com.apple.metadata:_kTimeMachineOldestSnapshot     50 

我想你必须从你移动到TM备份文件夹之外的文件中删除它们。我自己没有尝试过,因为我不想弄乱我的备份:)

要删除这些属性,请使用 attr 带有“c”选项的命令,如下所示:

xattr -c /path/to/file

你可能不得不使用 bypass 再次命令。

让我们知道这是否有效。

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.