From owner-freebsd-fs@freebsd.org Sun Aug 2 20:56:49 2015 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 BB9909B0AC6 for ; Sun, 2 Aug 2015 20:56:49 +0000 (UTC) (envelope-from wjw@digiware.nl) 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 A19C2B24 for ; Sun, 2 Aug 2015 20:56:49 +0000 (UTC) (envelope-from wjw@digiware.nl) Received: by mailman.ysv.freebsd.org (Postfix) id 9E8199B0AC5; Sun, 2 Aug 2015 20:56:49 +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 9D1FA9B0AC4 for ; Sun, 2 Aug 2015 20:56:49 +0000 (UTC) (envelope-from wjw@digiware.nl) Received: from smtp.digiware.nl (smtp.digiware.nl [31.223.170.169]) (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 181DCB22; Sun, 2 Aug 2015 20:56:48 +0000 (UTC) (envelope-from wjw@digiware.nl) Received: from rack1.digiware.nl (unknown [127.0.0.1]) by smtp.digiware.nl (Postfix) with ESMTP id 03532153431; Sun, 2 Aug 2015 22:56:39 +0200 (CEST) X-Virus-Scanned: amavisd-new at digiware.nl Received: from smtp.digiware.nl ([127.0.0.1]) by rack1.digiware.nl (rack1.digiware.nl [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id LoASFUSLQeem; Sun, 2 Aug 2015 22:56:28 +0200 (CEST) Received: from [IPv6:2001:4cb8:3:1:9d45:b378:a938:3c8] (unknown [IPv6:2001:4cb8:3:1:9d45:b378:a938:3c8]) by smtp.digiware.nl (Postfix) with ESMTPA id E1481153430; Sun, 2 Aug 2015 22:56:28 +0200 (CEST) Subject: Re: Multiple entries in ZFS "sharenfs" property? To: Lev Serebryakov References: <130767529.20150801150343@serebryakov.spb.ru> <55BDF5D2.3090306@digiware.nl> <1941826477.20150802210808@serebryakov.spb.ru> Cc: fs@freebsd.org From: Willem Jan Withagen Message-ID: <55BE83FA.1060208@digiware.nl> Date: Sun, 2 Aug 2015 22:56:26 +0200 User-Agent: Mozilla/5.0 (Windows NT 10.0; WOW64; rv:38.0) Gecko/20100101 Thunderbird/38.1.0 MIME-Version: 1.0 In-Reply-To: <1941826477.20150802210808@serebryakov.spb.ru> Content-Type: text/plain; charset=windows-1252 Content-Transfer-Encoding: 7bit X-BeenThere: freebsd-fs@freebsd.org X-Mailman-Version: 2.1.20 Precedence: list List-Id: Filesystems List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 02 Aug 2015 20:56:49 -0000 On 2-8-2015 20:08, Lev Serebryakov wrote: > Hello Willem, > > Sunday, August 2, 2015, 1:49:54 PM, you wrote: >>> Is it possible to put multiple entries (for multiple networks) into >>> "sharenfs" property for ZFS filesystem? > >> Something like? >> >> I think I just did it by putting the text between '' 's: >> ' > >> Which then ends up in /etc/zfs/exports: >> /home/wjw -alldirs -maproot=0 -network 192.168.10.0 -mask 255.255.252.0 > I need 4 such lines per FS (with different -network / -mask arguments). One line works. Four lines don't. Hi Lev, Nope, that doesn't work, as far as I can tell. You'd have to revert to editting /etc/exports. Or hack on 'zfs set sharenfs' to generate multiple lines, in some sort of format. Like making ';' a line separator, and then prefix each part with the volume we are modifying. Place to give it a go are in: cddl/compat/opensolaris/misc/fsshare.c:213 if (share) { fprintf(newfd, "%s\t%s\n", mountpoint, translate_opts(shareopts)); } And there split the shareopts on the split char (eg. ';') in several shareopts and then loop over them. Disadvantage is that the max length op the options is: MAXPATHLEN. So you can easily run out of space if you have many exports to do. -WjW