From owner-freebsd-fs@freebsd.org Tue Mar 8 05:26:44 2016 Return-Path: Delivered-To: freebsd-fs@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 6387AAC21FF for ; Tue, 8 Mar 2016 05:26:44 +0000 (UTC) (envelope-from jkh@ixsystems.com) Received: from mailman.ysv.freebsd.org (mailman.ysv.freebsd.org [IPv6:2001:1900:2254:206a::50:5]) by mx1.freebsd.org (Postfix) with ESMTP id 43CB9A98 for ; Tue, 8 Mar 2016 05:26:44 +0000 (UTC) (envelope-from jkh@ixsystems.com) Received: by mailman.ysv.freebsd.org (Postfix) id 40B0DAC21FD; Tue, 8 Mar 2016 05:26:44 +0000 (UTC) Delivered-To: fs@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 26534AC21FB for ; Tue, 8 Mar 2016 05:26:44 +0000 (UTC) (envelope-from jkh@ixsystems.com) Received: from barracuda.ixsystems.com (barracuda.ixsystems.com [12.229.62.30]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client CN "*.ixsystems.com", Issuer "Go Daddy Secure Certificate Authority - G2" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id ED39EA93 for ; Tue, 8 Mar 2016 05:26:43 +0000 (UTC) (envelope-from jkh@ixsystems.com) X-ASG-Debug-ID: 1457414802-08ca041787e9c60001-ETJDRd Received: from zimbra.ixsystems.com ([10.246.0.20]) by barracuda.ixsystems.com with ESMTP id ReAiXcRFNUXtr106 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=NO); Mon, 07 Mar 2016 21:26:42 -0800 (PST) X-Barracuda-Envelope-From: jkh@ixsystems.com X-Barracuda-RBL-Trusted-Forwarder: 10.246.0.20 X-ASG-Whitelist: Client Received: from localhost (localhost [127.0.0.1]) by zimbra.ixsystems.com (Postfix) with ESMTP id 3E021A24AAF; Mon, 7 Mar 2016 21:26:42 -0800 (PST) Received: from zimbra.ixsystems.com ([127.0.0.1]) by localhost (zimbra.ixsystems.com [127.0.0.1]) (amavisd-new, port 10032) with ESMTP id TWPhxT75OqFO; Mon, 7 Mar 2016 21:26:42 -0800 (PST) Received: from localhost (localhost [127.0.0.1]) by zimbra.ixsystems.com (Postfix) with ESMTP id E80E7A24AB0; Mon, 7 Mar 2016 21:26:41 -0800 (PST) X-Virus-Scanned: amavisd-new at ixsystems.com Received: from zimbra.ixsystems.com ([127.0.0.1]) by localhost (zimbra.ixsystems.com [127.0.0.1]) (amavisd-new, port 10026) with ESMTP id L6ilLv6SRbv8; Mon, 7 Mar 2016 21:26:41 -0800 (PST) Received: from [10.8.0.34] (unknown [10.8.0.34]) by zimbra.ixsystems.com (Postfix) with ESMTPSA id 702ABA24AA9; Mon, 7 Mar 2016 21:26:41 -0800 (PST) Content-Type: text/plain; charset=utf-8 Mime-Version: 1.0 (Mac OS X Mail 9.3 \(3124\)) Subject: Re: FUSE extended attribute patches available From: Jordan Hubbard X-ASG-Orig-Subj: Re: FUSE extended attribute patches available In-Reply-To: <6AF0FC23-CC34-43EA-A008-9FB82FB21558@FreeBSD.org> Date: Mon, 7 Mar 2016 21:26:42 -0800 Cc: Julian Elischer , Ken Merry , fs@freebsd.org, scsi@freebsd.org Content-Transfer-Encoding: quoted-printable Message-Id: <536B3B67-E8F6-472C-8A2C-8884533B4CB6@ixsystems.com> References: <800018199.6694281.1457233600357.JavaMail.zimbra@uoguelph.ca> <56DD2AB6.1030407@freebsd.org> <6AF0FC23-CC34-43EA-A008-9FB82FB21558@FreeBSD.org> To: Robert Watson X-Mailer: Apple Mail (2.3124) X-Barracuda-Connect: UNKNOWN[10.246.0.20] X-Barracuda-Start-Time: 1457414802 X-Barracuda-Encrypted: ECDHE-RSA-AES256-GCM-SHA384 X-Barracuda-URL: https://10.246.0.26:443/cgi-mod/mark.cgi X-Virus-Scanned: by bsmtpd at ixsystems.com X-Barracuda-BRTS-Status: 1 X-BeenThere: freebsd-fs@freebsd.org X-Mailman-Version: 2.1.21 Precedence: list List-Id: Filesystems List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 08 Mar 2016 05:26:44 -0000 > On Mar 6, 2016, at 11:59 PM, Robert Watson = wrote: >=20 > For example: who should be responsible for backing up those = attributes? For =E2=80=98system=E2=80=99 attributes in FreeBSD, it is = assumed that backup tools will be aware of the services layered over the = attributes =E2=80=94 e.g., that they will back up ACLs using the ACL = API, rather than backing up the binary EAs holding the ACLs. For = =E2=80=98user=E2=80=99 attributes, it is assumed that backup tools = (e.g., tar) must explicitly preserve them, since they are user-defined = and user-managed. For filesystem-specific attributes, some other choice = will need to be made =E2=80=94 perhaps filesystem-specific backup tools = need to know about them? As Rick observed, the last time this came up, I pointed out that = teaching all possible =E2=80=9Carchivers=E2=80=9D of filesystem = information (which includes serializers, like rsync / scp / etc) how to = cope gracefully with EAs and ACLs, even if you stick ACLs in an EA = system namespace and make them opaque blobs, is =E2=80=9Chard=E2=80=9D = and it=E2=80=99s the edge/legacy cases that really hose you. This is why Apple chose to split the problem space between =E2=80=9Cthings= that are capable of dealing with the problem natively=E2=80=9D = (abstracting that native understanding behind the copyfile(3) APIs), = which is a comparatively small number of tools, and =E2=80=9Ceverything = else=E2=80=9D which gets all of its metadata serialized into an = AppleDouble file. Yes, those are the ._* files you see when you copy a = bunch of files off your Mac onto a filesystem that doesn=E2=80=99t know = how to cope with the metadata. The extra AppleDouble files just sit = around passively on that NTFS or ext2fs filesystem, minding their own = business, until they get copied back to to Mac, at which point something = at the VFS layer (I=E2=80=99m guessing now, I never actually looked) = re-unites the ._Foo file with its corresponding Foo file and the = AppleDouble file disappears. I used to think this was kind of ghetto, then I observed how many = problems it solved in terms of turning data-loss scenarios into =E2=80=9Cn= o big deal, it=E2=80=99ll all work out=E2=80=9D scenarios and I changed = my mind. TL;DR summary: This can be handled in such a way that =E2=80=9Cno one = need be responsible=E2=80=9D for backing up those attributes if you=E2=80=99= re willing to pay the freight. - Jordan