From owner-svn-src-head@freebsd.org Sun Jan 22 17:49:15 2017 Return-Path: Delivered-To: svn-src-head@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id B49EFCBBD3D; Sun, 22 Jan 2017 17:49:15 +0000 (UTC) (envelope-from mckusick@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 6ACC382E; Sun, 22 Jan 2017 17:49:15 +0000 (UTC) (envelope-from mckusick@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id v0MHnE1t044456; Sun, 22 Jan 2017 17:49:14 GMT (envelope-from mckusick@FreeBSD.org) Received: (from mckusick@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id v0MHnETA044455; Sun, 22 Jan 2017 17:49:14 GMT (envelope-from mckusick@FreeBSD.org) Message-Id: <201701221749.v0MHnETA044455@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: mckusick set sender to mckusick@FreeBSD.org using -f From: Kirk McKusick Date: Sun, 22 Jan 2017 17:49:14 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r312638 - head/sbin/restore X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 22 Jan 2017 17:49:15 -0000 Author: mckusick Date: Sun Jan 22 17:49:14 2017 New Revision: 312638 URL: https://svnweb.freebsd.org/changeset/base/312638 Log: By default, when doing incremental restores the restore program overwrites an existing file rather than removing it and creating a new file. If the old and new version of the file both have extended attributes and the extended attributes of the two versions of the file are different, the result is that the new file ends up with the union of the extended attributes of the old and new files. To get the behavior of replacing the extended attributes rather than augmenting them requires explicitly removing the old attributes and then adding the new ones. To get this behavior, the old file must be unlinked (which clears out the old extended attributes). Then the new file of the same name must be created and the new extended attributes added to it. This behavior can be obtained by specifying the -u flag when running restore. Rather than defaulting the -u option to on and possibly breaking existing scripts using restore, this change simply notes in the restore.8 manual page that the -u flag is recommended when using restore on filesystems that contain extended attributes. PR: 216127 Reported by: dewayne at heuristicsystems.com.au Differential Revision: https://reviews.freebsd.org/D9208 Modified: head/sbin/restore/restore.8 Modified: head/sbin/restore/restore.8 ============================================================================== --- head/sbin/restore/restore.8 Sun Jan 22 17:24:00 2017 (r312637) +++ head/sbin/restore/restore.8 Sun Jan 22 17:49:14 2017 (r312638) @@ -349,6 +349,8 @@ To prevent this, the .Fl u (unlink) flag causes restore to remove old entries before attempting to create new ones. +This flag is recommended when using extended attributes +to avoid improperly accumulating attributes on pre-existing files. .It Fl v Normally .Nm