GNU/Linux >> Znalost Linux >  >> Linux

Jak získat seznam klientů připojených k serveru NFS v místní síti?

Připojené klienty NFS můžete najít spuštěním následujícího na serveru NFS:

netstat | grep :nfs

NFS funguje přes UDP i TCP, pouze otevřená TCP spojení se zobrazí v netstat nebo ss . Také jako distribuovaný souborový systém měl (historicky) svůj slušný podíl problémů (stav, mezipaměť, zamykání, upozornění, zabezpečení – z nichž některé mají řešení prostřednictvím dalších funkcí RPC, např. rpc.statd ).

Na serveru Linux NFS (viz man rpc.mountd ) požadavky na připojení/odpojení klienta jsou zaznamenány v /var/lib/nfs/rmtab , stejně jako /etc/mtab , takže odpověď by měla znít:

cat /var/lib/nfs/rmtab

Pokud je prázdný, máte buď problém s rpc.mountd (takže byste měli zkontrolovat spuštěné služby RPC), nebo jsou všichni klienti NFSv4, kteří tuto funkci nepoužívají.

U verzí, které jsem zkontroloval rmtab je prezentován jako:

10.1.2.0/24:/path/to/export1:0x000...flags
10.1.2.10:/path/to/export1:0x0000...flags
10.1.2.22:/path/to/export1:0x0000...flags
10.1.2.0/24:/path/to/export2:0x000...flags
10.1.2.22:/path/to/export2:0x0000...flags
10.1.2.99:/path/to/export2:0x0000...flags

tj. je uveden každý bod připojení a za ním klienti, kteří jej používají.

Všimněte si upozornění v manuálové stránce:

Tento soubor je však převážně okrasný. Za prvé, klient může nadále používat popisovač souboru i po volání procedury UMOUNT rpc.mountd. A za druhé, pokud se klient restartuje bez upozornění rpc.mountd, v rmtab zůstane zastaralý záznam.

/proc/fs/nfsd/client přístup (odpověď @Vsevoloda Gromova) v novějších jádrech by měl být v tomto ohledu lepší, ale protože podporuje pouze klienty NFSv4, kteří by se měli chovat lépe.


Od linuxového jádra 5.3 můžete použít speciální adresář nazvaný /proc/fs/nfsd/clients .

Verzi jádra můžete zkontrolovat podle uname -r příkaz


Od netstat není vždy k dispozici, protože je třeba jej nahradit ss můžete také použít

ss -a|grep nfs


Linux
  1. Jak zjistit, jaké další stroje jsou připojeny k místní síti?

  2. Jak Pxe Network Boot Ubuntu Server 14.04 pomocí Nfs?

  3. Jak zjistit fyzický stav připojení síťového kabelu/konektoru?

  1. Jak zajistím, aby můj webový server Golang běžel na pozadí?

  2. Jak získat seznam adresářů v zipu?

  3. Jak získat přístup k webovému serveru, který běží na WSL (Windows Subsystem for Linux) z místní sítě

  1. Jak se dostat ke službě/serveru, který je v nepřístupné síti (pomocí SSH tunelů)

  2. Jak získat MAC adresy zařízení, která nejsou v síti

  3. jak získat seznam připojených wifi klientů v OpenWrt 10.03?