[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]
Re: tar extract changed since netbsd-8? (extracting sets over running system)
On Tue, Nov 12, 2019 at 08:25:46AM -0500, Greg Troxel wrote:
> David Brownlee <abs%absd.org@localhost> writes:
> > On Tue, 12 Nov 2019 at 11:33, Jaromír Doleček <jaromir.dolecek%gmail.com@localhost> wrote:
> >> Le mar. 12 nov. 2019 à 12:05, Martin Husemann <martin%duskware.de@localhost> a écrit :
> >>> Not seen this locally, but that would be the switch to bsd/libarchive tar.
> >>> Maybe it does not unlink files before extraction and replaces them in-space?
> >>> I do the same kind of updates, but usually on a very quiet system.
> >>> The crashes you see are from other running processes? Joerg would likely
> >>> say: "don't do that" ;-)
> >> I thought we do unlink by default, I think I remember a commit to that effect in past. The unlink is very useful default behaviour of GNU tar. In-place overwrite is very rarely the wanted behaviour.
> > Aha thanks!
> > I would argue the switch to unlink no longer being the default is a
> > regression. If its mandated by standards or we're the only outlier
> > then it probably makes sense to switch, but otherwise its sprinkling
> > occasional non deterministic breakage across a bunch of scripts which
> > previously ran fine on NetBSD.
It does not force an unlink first, but will unlink if there is a
conflict. So the question would be why open(2) with O_CREAT|O_EXCL
> I'm not quite clear on 'unlink by default', but it seems to me the
> replacement files should be written to a temporary name and then
> renamed() into place so the file is either the old version or the new
That would dramatically increase the time it takes for an untar for
little to no gain.
Main Index |
Thread Index |