我tar目录是一个完整的JPEG图像:
tar cvfz myarchive.tar.gz mydirectory
Run Code Online (Sandbox Code Playgroud)
当我解开档案时:
tar xvfz myarchive.tar.gz
Run Code Online (Sandbox Code Playgroud)
我收到一个错误:
tar: Unexpected EOF in archive
Run Code Online (Sandbox Code Playgroud)
查看输出,它在一个特定JPEG图像的中间失败.
我究竟做错了什么?
pax*_*blo 10
有趣.我有几个问题可以指出问题所在.
1 /你在同一个平台上进行训练吗?它们可能是不同的版本tar(例如,GNU和old-unix)?如果它们不同,你可以在你用的同一个盒子上解开吗?
2 /当你简单地使用gunzip myarchive.tar.gz时会发生什么?那样有用吗?也许你的文件被破坏/截断了.我假设您会注意到压缩是否会产生错误,是吗?
基于GNU tar源,它只会在find_next_block()过早返回0时打印该消息,这通常是由截断的归档引起的.
可能是你用ascii模式而不是二进制模式来处理文件?如果没有,这可能会有所帮助.
$ gunzip myarchive.tar.gz
然后使用解压缩生成的tar文件
$ tar xvf myarchive.tar
希望这可以帮助.
我有一个类似的问题,由cron作业生成截断的tar文件,并将标准重定向到修复该问题的文件.
通过与同事交谈,cron创建了一个管道并限制了可以发送到标准输出的输出量.我通过从我的tar命令中删除-v来修复我的问题,使其更加冗长,并将错误输出保持在与其余cron作业相同的位置.如果您需要详细的tar输出,则需要重定向到文件.
| 归档时间: |
|
| 查看次数: |
89565 次 |
| 最近记录: |