Skip site navigation (1)Skip section navigation (2)
Date:      Fri, 13 Aug 2021 17:20:14 +0000
From:      bugzilla-noreply@freebsd.org
To:        bugs@FreeBSD.org
Subject:   [Bug 257817] tar/libarchive: cannot archive/recreate hardlinks to absolute symlinks
Message-ID:  <bug-257817-227@https.bugs.freebsd.org/bugzilla/>

next in thread | raw e-mail | index | archive | help
https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=3D257817

            Bug ID: 257817
           Summary: tar/libarchive: cannot archive/recreate hardlinks to
                    absolute symlinks
           Product: Base System
           Version: 13.0-RELEASE
          Hardware: Any
                OS: Any
            Status: New
          Severity: Affects Some People
          Priority: ---
         Component: bin
          Assignee: bugs@FreeBSD.org
          Reporter: mandree@FreeBSD.org
                CC: bugs@FreeBSD.org
            Blocks: 252184

+++ This bug was initially created as a clone of Bug #257816 +++

affects FreeBSD 12.2 and 13.0

after a user reports against e2fsprogs, I conclude that restore(8) is broken
and cannot faithfully recreate a hardlink to a symbolic link.

tar(1) with libarchive(3) fails in a similar vain.

I am attaching a demo script that uses two 20M sized swap-based md(4) devic=
es,
formats them with newfs -U and sets up some corner cases with symlinks=20

### The error in question is, for dump/restore on 13.0:

restore:
warning: cannot create hard link
./usr/local/sbin/hardlink-to-abssymlink->./usr/local/sbin/abssymlink: No su=
ch
file or directory

mtree verification:
sbin/file:=20
        link count (1, 2)
usr/local/sbin/abssymlink:=20
        link count (2, 1)
usr/local/sbin/relsymlink:=20
        link count (2, 1)
usr/local/sbin/hardlink-to-relsymlink:=20
        type (link, file)
./usr/local/sbin/hardlink-to-abssymlink missing


and consequential differences shown with mtree.

### The error in question is, for tar (libarchive) on 13.0:

./usr/local/sbin/hardlink-to-abssymlink: Hard-link target
'./usr/local/sbin/abssymlink' does not exist.
./usr/local/sbin/hardlink-to-relsymlink: Hard-link target
'./usr/local/sbin/relsymlink' does not exist.

mtree verification:
.:      modification time (Fri Aug 13 19:12:46 2021, Fri Aug 13 19:12:47 20=
21)
./usr/local/sbin/abssymlink missing
./usr/local/sbin/hardlink-to-abssymlink missing
./usr/local/sbin/hardlink-to-relsymlink missing
./usr/local/sbin/relsymlink missing



### gtar from the gtar-1.34 (archivers/gtar) succeeds!


Referenced Bugs:

https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=3D252184
[Bug 252184] sysutils/e2fsprogs: checksum mismatch
--=20
You are receiving this mail because:
You are on the CC list for the bug.
You are the assignee for the bug.=



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?bug-257817-227>