Laut manpage ist der Filesystemtyps "nfs4" "deprecated" (veraltet).
Verwende stattdessen den Typ "nfs" und die Option "nfsvers=4"
In der /etc/idmapd.conf *MUSS* als Domain der DNS domain name gesetzt sein
(NICHT der Realm).
Nach Änderungen muss man nfsidmap -c aufrufen
Danach NFS dateisysem unmounten und neu mounten
NFSv4 Server setup
Folgendes braucht es:
CONFIG_NFSD und CONFIG_NFSD_V4 im Kernel aktiviert
Kernelmodule sunrpc,nfs und nfsd geladen
Das rpc_pipefs muss gemountet sein (macht mein nfsv4-server-dinit Paket)
/proc/fs/nfsd muss gemountet sein (macht mein nfsv4-server-dinit Paket)
gssproxy starten (macht mein nfsv4-server-dinit)
nfsdcld starten (macht mein nfsv4-server-dinit)
rpc.nfsd starten (macht mein nfsv4-server-dinit)
nfsv4.exportd starten (macht mein nfsv4-server-dinit)
Da meine Server alle unter Artix Linux mit dem dinit laufen, habe ich dafür ein
passendes service file gemacht nfsv4-server-dinit.
Wichtig ist, dass in der /etc/fstab der fstype auf nfs ist, und
keinesfalls nfs4 - die version muss (wenn überhaupt) zwingend per
parameter nfsvers gesetzt werden.
Ab kernel Version ?.?.? muss auf dem Client der nfsidmapd nicht mehr laufen
(auf dem Server aber der rpc.idmapd sehr wohl).
Ob das mapping funktioniert, kann man mit
grep id_resolv /proc/keys
dmesg |grep id_resolver
überprüfen.
Debugging
Informationen über den laufenden NFS daemon findet man in /proc/fs/nfsd
For debugging or finding why NFS mount fails on server side, you need to
enable debugging to get relevant infos to the system log like so:
root@server:~# rpcdebug -m nfsd -c all # clear all flags to stop logging them
root@server:~# rpcdebug -m nfsd -s auth proc # set the auth and proc flags instead of logging all flags
on systems with systemd, you will then find debugging infos e.g. with journalctl -b -r
rpc.idmapd started nicht richtig, wenn /proc/net/rpc/nfs4.nametoid/channel
nicht existiert. wer öffnet das ?
rpc.gssd started nicht richtig, wenn ??? fehlt