Package: linux-image
Version: 5.10.0-31
Hi,
yesterday I was patching some box still on bullseye 32 bit which is serving a
large NFSv2 share for some very ancient AIX workstations needed to sift though
a huge library of old CAD files before deciding which one needs to be converted
to sth current and adapted as needed.
Converting the library is not an option, unfortunately. Neither is a more
current version of NFS afaik - the AIX workstations are not mine and the last
time I used AIX was in the early 2000s...
All of the above lives behind a firewall, of course...
After the bullseye box came back up and one CAD user tested the mount, it
didn't work. I tried a few things in /etc/defaults/nfs-kernel-server but
whenever NFSv2 was asked for, I got an error message in syslog and "rpcinfo -p
hostname | fgrep nfs" showed only v3 and v4. Since my maintenance window came
to to an end, I had to go back to the snapshot and everybody except me was
happy again.
I set up the same scenario on a bullseye testbox today (64 bit unfortunately)
with roughly the same patchlevel as the nfs server and recreated the scenario:
before upgrading from 11.9 to 11.10 all is fine
# rpcinfo -p hisws0028 | fgrep nfs
100003 2 tcp 2049 nfs
100003 3 tcp 2049 nfs
100003 4 tcp 2049 nfs
100003 2 udp 2049 nfs
100003 3 udp 2049 nfs
# uname -a
Linux hisws0028 5.10.0-30-amd64 #1 SMP Debian 5.10.218-1 (2024-06-01) x86_64
GNU/Linux
# cat /etc/debian_version
11.9
an apt upgrade and reboot later no more NFSv2
# rpcinfo -p hisws0028 | fgrep nfs
100003 3 tcp 2049 nfs
100003 4 tcp 2049 nfs
100003 3 udp 2049 nfs
# uname -a
Linux hisws0028 5.10.0-31-amd64 #1 SMP Debian 5.10.221-1 (2024-07-14) x86_64
GNU/Linux
# cat /etc/debian_version
11.10
And the well known error message in syslog:
Jul 24 11:55:11 hisws0028 rpc.nfsd[1570]: Writing version string to kernel: +2
+3 +4
Jul 24 11:55:11 hisws0028 rpc.nfsd[1570]: Setting version failed: errno 22
(Invalid argument)
I then tried to diff the kernel configs and got the following:
# diff /boot/config-5.10.0-30-amd64 /boot/config-5.10.0-31-amd64
3c3
< # Linux/x86 5.10.218 Kernel Configuration
---
> # Linux/x86 5.10.221 Kernel Configuration
28c28
< CONFIG_BUILD_SALT="5.10.0-30-amd64"
---
> CONFIG_BUILD_SALT="5.10.0-31-amd64"
8879,8880c8879
< CONFIG_NFSD_V2_ACL=y
< CONFIG_NFSD_V3=y
---
> # CONFIG_NFSD_V2 is not set
8893a8893
> CONFIG_NFS_V4_2_SSC_HELPER=y
So it seems that the 5.10.0-31 kernel was built with NFSv2 support disabled,
unlike earlier ones. I could not find anything regarding NFS in the debian
11.10 release notes.
Can we please get NFSv2 support back in the kernel for those who still have to
use it? Disabling it in userland by default should be fine from a security
point of view.
Regards,
Joachim