Găzduiesc un server NFS pe Synology NAS. Este configurat prin serverul NFS încorporat sub File Services. Opțiunile de configurare sunt oarecum limitate și am setat dimensiunea pachetului de citire/scriere de 32 kb, iar versiunea NFS maximă este 4.1.
Intrarea /etc/exports este:
/volume1/NAS_Andrew 192.168.0.0/24(rw,async,no_wdelay,crossmnt,insecure,all_squash,insecure_locks,sec=sys,anonuid=1024,anongid=100)
Clientul meu ubuntu are următoarea intrare fstab:
192.168.0.219:/volume1/NAS_Andrew /mnt/nas nfs nofail,nconnect=16,rsize=32000,wsize=32000,hard 0 0
Acest lucru se rezolvă la următoarea intrare în /proc/mounts când este montat:
192.168.0.219:/volume1/NAS_Andrew /mnt/nas nfs4 rw,relatime,vers=4.1,rsize=32000,wsize=32000,namlen=255,hard,proto=tcp,nconnect=16,timeo=600,retrans=600, ,sec=sys,clientaddr=192.168.0.220,local_lock=none,addr=192.168.0.219 0 0
Problema este că atunci când scriu un fișier mare pe montura NFS, toate celelalte operațiuni ale sistemului de fișiere din cadrul monturii se blochează.
De exemplu, dacă rulez următoarele în terminalul 1:
time dd if=/dev/zero of=/mnt/nas/testfile bs=16k count=128k
și apoi fugi ls -la
în terminalul 2; cel ls
procesul se blochează până la dd
scrierea este completă.
Cred că problema se limitează la clientul NFS local, deoarece dacă rulez la fel ls -la
pe un alt server care are și partajarea NFS montată - rulează fără nicio blocare sau problemă.
Sper că cineva poate face o lumină de ce se blochează operațiunea de scriere.
Am încercat să setez nconnect=16
într-un efort de a crește conexiunile tcp și de a permite mai mult de o operațiune - cu toate acestea, acest lucru nu a funcționat și bănuiesc nconnect
poate fi limitată la cazurile în care sunt disponibile mai multe interfețe de rețea.
Rulez Ubuntu 20.04.3 LTS.
Orice intrare este foarte apreciată.