我正在尝试使用 tar 进行备份,但不断收到“由于之前的错误而退出”的错误。解决方案是(显然)使用 --exclude 排除有问题的文件/目录,我正在这样做。
但问题是我运行 tar 几个小时,每次半天,只发现一个错误,修复它,然后再次运行半天,发现还有另一个错误......修复它。等等。已经好几天了。我希望能够使用一个标志来运行它,该标志只是告诉它从开始到结束进行搅拌并为我列出所有错误。手册页有一些关于“忽略子错误”的内容,但我不明白这意味着什么。
其中大多数错误也是不必要的。因此,如果有一种方法可以一次看到所有预期的错误,我可以编写一个包含所有错误的排除文件,一劳永逸地运行 tar,然后就完成了。
预先感谢您的任何帮助!
答案1
Tar 尽其所能地完成了运行。可能会出现第二次运行时不会发生的暂时性错误:例如,如果在 tar 扫描目录以找出它必须执行的操作与实际将其写出的时间之间修改或删除了文件。例如,可以附加日志。
您能举例说明您遇到的错误类型吗?您手下的文件更改可能是无法修复的。如果您提供特定的文件名(例如使用 -T 选项或 find 命令),您可以单独编写脚本来检查文件是否全部存在且可读。
您还可以 tar -tv 存档,进行比较以查找丢失的内容,然后将这些名称放入单独的附录 tar 中。