Notez qu'il s'agit d'une question de publication croisée dans la communauté QNAP NAS ici: http://forum.qnap.com/viewtopic.php?f=35&t=96526&p=427018#p427018 =
Tous les commentaires et suggestions, ainsi que les pointeurs d'informations pertinentes sont très appréciés.
Je ne peux pas monter NFS à partir de mon client NFS exécutant Ubuntu 14.04.1 (LTS) sur mon serveur NFS (QNAP NAS). Mon environnement est:
Sur le client NFS, si je lance la commande "mount -t nfs nas:/nfs/mnt" , le résultat est "mount.nfs: La connexion a expiré "après cinq ou dix minutes plus tard. Le même résultat est renvoyé même si je spécifie le protocole NFS version 3 avec l'option -overs = 3 lors de la tentative de montage NFS. De plus, la commande " showmount -e " répertorie les noms de dossier partagé (répertoire) NFS exportés, mais il faut également cinq ou 10 minutes pour le terminer.
Sur le serveur NFS, la commande "exportfs -rva" renvoie le message d'avertissement suivant, mais j'estime que le message ne concerne pas le problème (I accède au NAS via SSH dans cet exemple de code):
[~] # exportfs -rva
exportfs: /etc/exports [1]: Neither 'subtree_check' or 'no_subtree_check' specified for export "*:/share/MD0_DATA/Public".
Assuming default behaviour ('no_subtree_check'). NOTE: this default has changed since nfs-utils version 1.0.x
exportfs: /etc/exports [2]: Neither 'subtree_check' or 'no_subtree_check' specified for export "*:/share/MD0_DATA/nfs".
Assuming default behaviour ('no_subtree_check'). NOTE: this default has changed since nfs-utils version 1.0.x
exporting *:/share/MD0_DATA/nfs exporting *:/share/MD0_DATA/Public
Sur le client NFS, la commande de montage mount est longue (plus de cinq minutes). J'ai spécifié l'option vers = 3, car je comprends que QNAP ne prend pas en charge NFS V4 par défaut et que NFS V3 suffit à mon besoin. Peu importe que vous spécifiiez ou non les options tcp et/ou nolock (même comportement).
root@livak5:~# mount -t nfs -vvv -overs=3,tcp,nolock nas:/share/MD0_DATA/nfs /mnt
mount: fstab path: "/etc/fstab"
mount: mtab path: "/etc/mtab"
mount: lock path: "/etc/mtab~"
mount: temp path: "/etc/mtab.tmp"
mount: UID: 0
mount: eUID: 0
mount: spec: "nas:/share/MD0_DATA/nfs"
mount: node: "/mnt"
mount: types: "nfs"
mount: opts: "vers=3,tcp,nolock"
mount: external mount: argv[0] = "/sbin/mount.nfs"
mount: external mount: argv[1] = "nas:/share/MD0_DATA/nfs"
mount: external mount: argv[2] = "/mnt"
mount: external mount: argv[3] = "-v"
mount: external mount: argv[4] = "-o"
mount: external mount: argv[5] = "rw,vers=3,tcp,nolock"
mount.nfs: timeout set for Sun Aug 24 11:24:44 2014
mount.nfs: trying text-based options 'vers=3,tcp,nolock,addr=192.168.11.50'
mount.nfs: prog 100003, trying vers=3, prot=6
mount.nfs: trying 192.168.11.50 prog 100003 vers 3 prot TCP port 2049
mount.nfs: prog 100005, trying vers=3, prot=6
mount.nfs: trying 192.168.11.50 prog 100005 vers 3 prot TCP port 41687
mount.nfs: mount(2): Connection timed out
mount.nfs: trying text-based options 'vers=3,tcp,nolock,addr=192.168.11.50'
mount.nfs: prog 100003, trying vers=3, prot=6
mount.nfs: trying 192.168.11.50 prog 100003 vers 3 prot TCP port 2049
mount.nfs: prog 100005, trying vers=3, prot=6
mount.nfs: trying 192.168.11.50 prog 100005 vers 3 prot TCP port 41687
mount.nfs: mount(2): Connection timed out
mount.nfs: trying text-based options 'vers=3,tcp,nolock,addr=192.168.11.50'
mount.nfs: prog 100003, trying vers=3, prot=6
mount.nfs: trying 192.168.11.50 prog 100003 vers 3 prot TCP port 2049
mount.nfs: prog 100005, trying vers=3, prot=6
mount.nfs: trying 192.168.11.50 prog 100005 vers 3 prot TCP port 41687
mount.nfs: mount(2): Connection timed out
mount.nfs: Connection timed out
Sur le client NFS, portmapper fonctionne parfaitement avec NFS version 2, 3 et 4:
root@livak5:~# rpcinfo -p
program vers proto port service
100000 4 tcp 111 portmapper
100000 3 tcp 111 portmapper
100000 2 tcp 111 portmapper
100000 4 udp 111 portmapper
100000 3 udp 111 portmapper
100000 2 udp 111 portmapper
100024 1 udp 57148 status
100024 1 tcp 52831 status
Sur le serveur NFS, j’ai essayé de vérifier si le pormapper s’exécute à partir du client NFS, car il n’a pas la valeur Commande rpcinfo installée:
root@livak5:~# nc -zv nas 111
Connection to nas 111 port [tcp/sunrpc] succeeded!
root@livak5:~# rpcinfo -s nas
program version(s) netid(s) service owner
100000 2,3,4 local,udp,tcp portmapper superuser
100011 2,1 tcp,udp rquotad superuser
100005 3,2,1 tcp,udp mountd superuser
100003 3,2 udp,tcp nfs superuser
100227 3,2 udp,tcp - superuser
100021 4,3,1 tcp,udp nlockmgr superuser
100024 1 tcp,udp status superuser
La dernière commande ( rpcinfo ) prend beaucoup de temps (plus de cinq minutes) pour terminer ce qui reproduit la cause fondamentale du problème, je crois. Veuillez noter que sur les deux ports TCP, 2049 et 41687, les processus démons appropriés écoutent sur le NAS. Je peux confirmer ce fait puisque la commande nc retourne instantanément sur le client NFS contre NAS, comme indiqué dans le résultat suivant:
root@livak5:~# nc -zv nas 2049
Connection to nas 2049 port [tcp/nfs] succeeded!
root@livak5:~# nc -zv nas 41687
Connection to nas 41687 port [tcp/*] succeeded!
Curieusement, je peux monter NFS version 3 sur NAS lui-même, comme indiqué dans la sortie suivante (j'accède au NAS via SSH dans cet exemple de code):
[~] # mkdir /mnt2
[~] # mount -overs=3 nas:/share/MD0_DATA/public /mnt2
[~] # df -k
Filesystem 1k-blocks Used Available Use% Mounted on
/dev/ram0 154691 137854 16837 89% /
devtmpfs 1531580 4 1531576 0% /dev
tmpfs 65536 160 65376 0% /tmp
/dev/md9 521684 126312 395372 24% /mnt/HDA_ROOT
/dev/md0 11622485880 410664920 11211296672 4% /share/MD0_DATA
/dev/md13 379888 259868 120020 68% /mnt/ext
tmpfs 32768 0 32768 0% /.eaccelerator.tmp
nas:/share/MD0_DATA/public/11622485888 411189216 11211296672 4% /mnt2
Bien qu'il semble que j'ai un problème de ports bloqués sur le client NFS, mais il semble que Ubuntu 14.04.1 n'active pas ufw (pare-feu simple, il s'agit en fait d'une interface frontale pour iptables) par défaut, comme le montre le wiki suivant. document: Pare-feu simple (en quelque sorte, je ne peux pas mettre l'URL du wiki ici). Je ne peux rien confirmer qui soit bloqué en exécutant la commande sur le client NFS:
root@livak5:~# iptables -L
Chain INPUT (policy ACCEPT)
target prot opt source destination
Chain FORWARD (policy ACCEPT)
target prot opt source destination
Chain OUTPUT (policy ACCEPT)
target prot opt source destination
Il s’avère que le problème est dû au micrologiciel du commutateur Ethernet que j’utilise (NetGEAR GS116Ev2). Après la mise à jour du firmware 2.0.1.17 à partir de la version 2.0.0.23, le problème a disparu.