Re: NFSv4.x export options to mark export as case-insensitive, case-preserving? Re: LInux NFSv4.1 client and server- case insensitive filesystems supported?

Rick Macklem
2025-09-10T13:38:13Z

On Wed, Sep 10, 2025 at 3:47 AM Roland Mainz <roland.mainz@nrubsig.org> wrote:
>
> On Tue, Sep 9, 2025 at 9:32 PM Chuck Lever <chuck.lever@oracle.com> wrote:
> >
> > On 9/9/25 12:33 PM, Cedric Blancher wrote:
> > > On Tue, 9 Sept 2025 at 18:12, Chuck Lever <chuck.lever@oracle.com> wrote:
> > >>
> > >> On 9/9/25 12:06 PM, Cedric Blancher wrote:
> > >>> Due lack of a VFS interface and the urgend use case of needing to
> > >>> export a case-insensitive filesystem via NFSv4.x, could we please get
> > >>> two /etc/exports options, one setting the case-insensitive boolean
> > >>> (true, false, get-default-from-fs) and one for case-preserving (true,
> > >>> false, get-default-from-fs)?
> > >>>
> > >>> So far LInux nfsd does the WRONG thing here, and exports even
> > >>> case-insensitive filesystems as case-sensitive. The Windows NFSv4.1
> > >>> server does it correctly.
> >
> > As always, I encourage you to, first, prototype in NFSD the hard-coding
> > of these settings as returned to NFS clients to see if that does what
> > you really need with Linux-native file systems.
>
> If Cedric wants just case-insensitive mounts for a Windows NFSv4
> (Exceed, OpenText, ms-nfs41-client, ms-nfs42-client, ...), then the
> only thing needed is ext4fs or NTFS in case-insensitive mode, and that
> the Linux NFSv4.1 server sets FATTR4_WORD0_CASE_INSENSITIVE==true and
> FATTR4_WORD0_CASE_PRESERVING==true (for FAT
> FATTR4_WORD0_CASE_PRESERVING==false). Only applications using ADS
> (Alternate Data Streams) will not work, because the Linux NFS server
> does not support "OPENATTR"&co ops.
>
> If Cedric wants Windows home dirs:
> This is not working with the Linux NFSv4.1 server, because it must support:
> - FATTR4_WORD1_SYSTEM
> - FATTR4_WORD0_ARCHIVE
> - FATTR4_WORD0_HIDDEN
> - Full ACL support, the current draft POSIX-ACLs in Linux NFSv4.1
> server&&{ ext4fs, btrfs, xfs etc. } causes malfunctions in the Windows
> "New User" profile setup (and gets you a temporary profile in
> C:\Users\*.temp+lots of warnings and a note to log out immediately
> because your user profile dir has been "corrupted")
>
> Windows home dirs with NFSv4 only work so far with the
> Solaris&&Illumos NFS servers, and maybe the FreeBSD >= 14 NFS server
> (not tested yet).
I'll just note that the named attribute support (the windows client
folk like the name)
along with Hidden and System are in 15 only.
And Archive is not supported because it is listed as "deprecated" in the RFC.
(If this case really needs it, someone should try to get it "undeprecated" on
nfsv4@ietf.org. I could add Archive easily. All of these are for ZFS only.
ZFS also knows case insensitive, although I have not tried it.)

rick

>
> ----
>
> Bye,
> Roland
> --
> __ . . __
> (o.\ \/ /.o) roland.mainz@nrubsig.org
> \__\/\/__/ MPEG specialist, C&&JAVA&&Sun&&Unix programmer
> /O /==\ O\ TEL +49 641 3992797
> (;O/ \/ \O;)
>