BSDTar incompatible with.. BSDTar.

57 views
Skip to first unread message

Julian Elischer

unread,
Apr 18, 2018, 11:02:17 PM4/18/18
to libarchive-discuss

A tar file file created by:

bsdtar 3.3.2 - libarchive 3.3.2 zlib/1.2.11 liblzma/5.2.3 bz2lib/1.0.6  on FreeBSD-current-12

can be unpacked en-mass by bsdtar 2.7.0 - libarchive 2.7.0 on FreeBSD 8

but it can not unpack a single file or directory on its own (in any format).

(On FreeBSD 8.0.. file created on -current)
$ tar xzvf test.pax  -C /tmp/unpack2 root
x ./root/
x ./root/sqliterc: (Empty error message)

tar: Error exit delayed from previous errors.
$ tar xzvf test.tgz  -C /]mp/unpack2 root
x ./root/
x ./root/sqliterc: (Empty error message)
tar: (Empty error message)
tar: Error exit delayed from previous errors.
 or, with a differnet error message..

mesh-upgrade# tar xzf ./CloudController_full_7.2.0.0.12910.tgz -C /mnt/tmp/upgrade-data --strip=1 etc/AWS-Platform etc/p8.conf root/pre-upgrade-resources
p8.conf: Line too long
tar: root/pre-upgrade-resources: Not found in archive

tar: Error exit delayed from previous errors.


a file with the same contents, created with:

bsdtar 3.2.2 - libarchive 3.2.2 zlib/1.2.8 liblzma/5.2.2 bz2lib/1.0.6

running from FreeBSD 10/stable can be correctly extracted, both  as a whole set, or as individual items.:

The question is: what is the difference in the file?

also, the file from 12 can have a file extracted by the tar in freebsd 10.3 (same as above)..  works as expected.. same file.

any thoughts?

maybe due to 64 bit inode numbers change???

sometimes the error is "line too long" and sometimes ("Empty error message)"

Julian Elischer

unread,
Apr 18, 2018, 11:18:09 PM4/18/18
to libarchive-discuss
one other note.. sometimes I'm seeing "seek failed"

$ tar xzvf ../CloudController_full_7.2.0.0.12761.f12 -C /tmp/unpack2/ root/pre-upgrade-resources/run-me.sh
x root/pre-upgrade-resources/run-me.sh: Seek failed

tar: (Empty error message)
tar: Error exit delayed from previous errors.
$

Julian Elischer

unread,
Apr 19, 2018, 7:17:02 AM4/19/18
to libarchive-discuss
for a quick test from FreeBSD 8.0 you can try:

 fetch -o - http://people.freebsd.org/~julian/tar_fail.tgz |tar xzvf -  -C /tmp/ boot/defaults

as follows:
-                                             100% of  106 kB  582 kBps
x boot/defaults/: Line too long

tar: Error exit delayed from previous errors.

works fine on other platforms.  The question is why does it not happen with files tar'd up from 10.4.
What do I need to do to be able to feed a good upgrade file to these machines?  I"m kind of stuck unless I repackage the tar files using gtar or maybe an old version of bsdtar.
Reply all
Reply to author
Forward
0 new messages