Re: Supplementary GIDs?

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 




> On Jul 25, 2022, at 09:23, Chuck Lever III <chuck.lever@xxxxxxxxxx> wrote:
> 
> 
> 
>> On Jul 23, 2022, at 11:53 AM, Felipe Gasper <felipe@xxxxxxxxxxxxxxxx> wrote:
>> 
>> Hello,
>> 
>> 	I’m seeing two different behaviours between kernel NFS server versions in AlmaLinux 8 and Ubuntu 20. The following Perl demonstrates the issue:
>> 
>> --------
>> perl -MFile::Temp -Mautodie -Mstrict -e'my $fh = File::Temp::tempfile( DIR => "/the/nfs/mount" ); my $mailgid = getgrnam "mail"; my ($uid, $gid) = (getpwnam "bin")[2,3]; chown $uid, $gid, $fh; $) = "$gid $mailgid"; $> = $uid; chown -1, $mailgid, $fh'
>> --------
>> 
>> 	What this does, as root, is:
>> 
>> 1) Creates a file under /mnt, then deletes it, leaving the Linux file descriptor open.
>> 
>> 2) chowns the file to bin:bin.
>> 
>> 3) Sets the process’s EUID & GUID to bin & bin/mail.
>> 
>> 4) Does fchown( fd, -1, mailgid ).
>> 
>> 	When the server is AlmaLinux 8, the above works. When the server is Ubuntu 20, it fails with EPERM. (The client is AlmaLinux 8 in both cases.) Both are configured identically.
> 
> On each NFS sever, can you run 'uname -a' and show us the output?

Ubuntu 20 (the “bad” one):
root@kvm-demo-support:~# uname -a
Linux kvm-demo-support 5.4.0-122-generic #138-Ubuntu SMP Wed Jun 22 15:00:31 UTC 2022 x86_64 x86_64 x86_64 GNU/Linux

AlmaLinux 8 (the “good” one):
[root@10-2-71-6 ~]# uname -a
Linux 10-2-71-6.cprapid.com 4.18.0-372.16.1.el8_6.x86_64 #1 SMP Wed Jul 13 03:56:16 EDT 2022 x86_64 x86_64 x86_64 GNU/Linux

> 
> On on the NFS client, can you show us the output of 'nfsstat -m'
> during each test run?

> nfsstat -m
/mnt/phil from kvm-demo-support.dev.cpanel.net:/volumes/kvm-demo
 Flags:	rw,relatime,vers=4.2,rsize=262144,wsize=262144,namlen=255,hard,proto=tcp,timeo=600,retrans=2,sec=sys,clientaddr=10.2.65.75,local_lock=none,addr=10.0.32.83

/mnt/felipe from 10.2.71.6:/home
 Flags:	rw,relatime,vers=4.2,rsize=262144,wsize=262144,namlen=255,hard,proto=tcp,timeo=600,retrans=2,sec=sys,clientaddr=10.2.65.75,local_lock=none,addr=10.2.71.6


Thank you!

-FG



[Index of Archives]     [Linux Filesystem Development]     [Linux USB Development]     [Linux Media Development]     [Video for Linux]     [Linux NILFS]     [Linux Audio Users]     [Yosemite Info]     [Linux SCSI]

  Powered by Linux