I'm trying to setup an NFS mount to an older NAS device. The client
is Fedora 34, the NAS is a Buffalo Linkstation. I have access to the
NAS via SSH and I can successfully mount it using CIFS and SSHFS. Of
course, CIFS loses some file attributes and SSHFS seems slow and
doesn't see the filesystem usage properly. So I'd prefer NFS but it
keeps failing. I've even tried with my firewall disabled but no luck.
The NAS only works with NFS v2. It's NFS is a client-side application
as there is no NFS built into its kernel. But it is nothing new; the
app has been running successfully for many folks for years.
All the necessary ports seem to be open.
# nmap -sU -p2049,111 nas1
PORT STATE SERVICE
111/udp open rpcbind
2049/udp open nfs
# nmap -sT -p2049,111 nas1
PORT STATE SERVICE
111/tcp open rpcbind
2049/tcp open nfs
I can access the NAS with rpcinfo and showmount.
# showmount -e nas1
Export list for nas1:
/mnt/array1/share
client.compata.com
# rpcinfo -p nas1
program vers proto port service
100000 2 tcp 111 portmapper
100000 2 udp 111 portmapper
100003 2 udp 2049 nfs
100003 2 tcp 2049 nfs
100005 1 udp 726 mountd
100005 2 udp 726 mountd
100005 1 tcp 729 mountd
100005 2 tcp 729 mountd
But mount fails.
# mount -v -o vers=2 -t nfs nas1:/mnt/array1/share /nas1
mount.nfs: timeout set for Sat Aug 28 17:52:01 2021
mount.nfs: trying text-based options 'vers=2,addr=192.168.44.20'
mount.nfs: prog 100003, trying vers=2, prot=6
mount.nfs: trying 192.168.44.20 prog 100003 vers 2 prot TCP port 2049
mount.nfs: prog 100005, trying vers=1, prot=17
mount.nfs: trying 192.168.44.20 prog 100005 vers 1 prot UDP port 726
mount.nfs: mount(2): Protocol not supported
mount.nfs: Protocol not supported
# mount -v -o udp -o vers=2 -t nfs nas1:/mnt/array1/share /nas1
mount.nfs: timeout set for Sat Aug 28 17:53:43 2021
mount.nfs: trying text-based options 'udp,vers=2,addr=192.168.44.20'
mount.nfs: prog 100003, trying vers=2, prot=17
mount.nfs: trying 192.168.44.20 prog 100003 vers 2 prot UDP port 2049
mount.nfs: prog 100005, trying vers=1, prot=17
mount.nfs: trying 192.168.44.20 prog 100005 vers 1 prot UDP port 726
mount.nfs: mount(2): Protocol not supported
mount.nfs: Protocol not supported
I have tcpdump captures from both ends and I don't see anything obviously
wrong. (But then I'm not sure just what I ought to see there.) I do see
the portmap calls and the results seem ok. Each is followed by a null
call and a null reply, again nothing obviously wrong. I don't understand
why the mount proceeds to use V1 for prog 100005 (mount) without any
indication of a problem with the V2 attempt for NFS. But forcing V2 for
both doesn't help.
# mount -v -o nfsvers=2 -o mountvers=2 -o mountproto=tcp -t nfs
nas1:/mnt/array1/share /nas1
mount.nfs: timeout set for Sat Aug 28 18:28:37 2021
mount.nfs: trying text-based options 'nfsvers=2,mountvers=2,
mountproto=tcp,addr=192.168.44.20,mountaddr=192.168.44.20'
mount.nfs: prog 100003, trying vers=2, prot=6
mount.nfs: trying 192.168.44.20 prog 100003 vers 2 prot TCP port 2049
mount.nfs: prog 100005, trying vers=2, prot=6
mount.nfs: trying 192.168.44.20 prog 100005 vers 2 prot TCP port 729
mount.nfs: mount(2): Protocol not supported
mount.nfs: Protocol not supported
I can't find anything relevant in any system log. The final message,
"Protocol not supported", doesn't clearly indicate which protocol --
I presume mount(2) -- nor give any clue to a remedy. But if I force
v3 for mount, I get a version mismatch.
--
Dave Close, Compata, Irvine CA +1 714 434 7359
dave(a)compata.com dhclose(a)alumni.caltech.edu
"Computers are useless. They can only give you answers."
-- Pablo Picasso