我运行以下命令:
tar cvf ~/data.tar /home/user/data/
屏幕上显示了很多文件名,10 分钟后我看到:
tar:由于先前的错误而以失败状态退出
我在哪里可以看到 tar 的错误日志(是否位于 下/var/log
)。我可以看到焦油版本和原始版本之间有 100 Mb 的差异。我想知道新创建的存档中丢失的文件的名称。
du -sh data.tar /home/user/data
5.7G data.tar
5.8G /home/user/data
使用 GNU tar 1.27.1
答案1
tar
是一个交互式命令,不是服务,并且不生成日志文件。
其输出发送至stdout
,错误发送至stderr
。
您可以将输出流重定向到文件,但需要再次运行它。
tar cvf ~/data.tar /home/user/data/ > tar_stdout.log 2> tar_stderr.log
并检查该文件的内容tar_stderr.kog
。
或者将两个流合并到一个文件中:
tar cvf ~/data.tar /home/user/data/ &> tar.log
答案2
由于您的 tar 非常大,您可能不想像其他答案一样重复它并收集错误,因此请执行某种虚拟版本来/dev/null
删除v
选项并保留错误:
tar cf /dev/null /home/user/data/ 2>errors
答案3
您必须在解压文件时捕获日志,例如,
tar cvf ~/data.tar /home/user/data/ 2>tar.errors |tee tar.output
将错误放入tar.errors
,观察正常输出,然后放入那在tar.output
。