Яку версію NFS використовує мій сервер NFS?


14

Я монтую файлову систему NFS на своїй машині. Як визначити, яку версію протоколу NFS використовує сервер? У мене немає доступу до сервера NFS, але я маю root на своїй клієнтській машині.

Чи можна щось запустити на моїй клієнтській машині, щоб визначити, яку версію протоколу NFS використовує сервер або які версії він підтримує?

Мені не вдалося знайти будь-яку корисну інформацію у /var/log/messagesвиводі налагодження ядра ( dmesg).

Я спробував бігати nfsstat, але не впевнений, чи дає мені якась корисна інформація. Однак, коли я запускаю nfsstat -sзапитувати інформацію про сервер, я не бачу нічого корисного:

# nfsstat -s
Server rpc stats:
calls      badcalls   badfmt     badauth    badclnt
0          0          0          0          0       

Коли я запускаю nfsstat -cзапитувати інформацію про клієнта, я бачу деяку інформацію Client nfs v3, але не знаю, як це інтерпретувати. Чи говорить це мені щось про протокол, який використовується між моєю клієнтською машиною та сервером NFS? Чи означає це, що я зараз використовую v3 протоколу NFS? Чи говорить мені щось про те, які версії протоколу NFS підтримує сервер, наприклад, NFS v4?

Відповіді:


21

nfsstat -cПрограма покаже вам версію NFS на насправді використовується.

Якщо ви запустите, rpcinfo -p {server}ви побачите всі версії всіх програм RPC, які підтримує сервер . У моїй системі я отримую такий вихід:

$ rpcinfo -p localhost
   program vers proto   port
    100000    2   tcp    111  portmapper
    100000    2   udp    111  portmapper
    ...
    100003    2   tcp   2049  nfs
    100003    3   tcp   2049  nfs
    100003    4   tcp   2049  nfs
    100003    2   udp   2049  nfs
    100003    3   udp   2049  nfs
    100003    4   udp   2049  nfs
    ...

Це показує мені, що мій сервер NFS ( localhostу цьому прикладі) пропонує версії 2, 3 та 4 протоколу NFS по всій UDP та TCP.


1
Як ви можете сказати, чи V4 4.2 або щось інше (бажано, якщо nfs насправді не працює .. так як я не можу з певних причин змонтуватися від клієнта)?
Ділан

@Dylan чому б не поставити це як нове запитання?
roaima

5

Залежно від вашої ОС та версії існують різні способи її перевірки.

nfsstat:

# nfsstat -m
/mnt/share from 10.0.0.1:/mnt/share
Flags:  rw,relatime,vers=3,rsize=524288,wsize=524288,namlen=255,hard,proto=tcp,timeo=600,retrans=2,sec=sys,mountaddr=10.0.0.1,mountvers=3,mountport=30924,mountproto=udp,local_lock=none,addr=10.0.0.1

Але можна точно

# grep nfs /proc/mounts
10.0.0.1:/mnt/share /mnt/share nfs rw,relatime,vers=3,rsize=524288,wsize=524288,namlen=255,hard,proto=tcp,timeo=600,retrans=2,sec=sys,mountaddr=10.0.0.1,mountvers=3,mountport=30924,mountproto=udp,local_lock=none,addr=10.0.0.1

що, очевидно, той самий вихід.

Він відображається vers=3на сервері та mountvers=3.


2
grep nfs /proc/mounts(Для мене на сервері) відображається тільки nfsd /proc/nfsd nfsd rw,realtime 0 0. У мене клієнт фактично не змонтований (я не можу змусити його працювати). Все здається нормальним (використання nfs4 на обох, IP-адреси правильні, / etc / export нормально, nfs-serverперезапущено, exportfs -ravвиглядає добре, showmount -e serverклієнт виглядає чудово тощо), але коли я намагаюся встановити КОЖНЕ ВРЕМЕ ... він зависає, поки mount.nfs: Connection timed out- Або mount.nfs4: Connection timed out... настільки засмучую. Вибачте за мою зухвалість, яка, ймовірно, залишиться нефіксована).
Ділан

тож, мабуть, .. чи є спосіб отримати версію nfs (наприклад, 4.2 чи 4.1 чи що у вас) без встановлення клієнта?
Ділан

Я наполегливо працюю над тим же питанням. Все нормально і раніше працювало. Я відтворив свої бродячі VM, а потім він перестав працювати. Nfsstat показує, що всі дзвінки є поганими дзвінками типу badauth.
onknows

1
@Dylan, сервер налаштований для роботи з декількома версіями NFS. Залежно від конфігурації сервера та / або здібностей / налаштувань клієнта, існує кілька можливих відповідей. Крім того, якщо у вас немає клієнтів, що підключаються до сервера nfs, ви можете перевірити файли конфігурації вашого сервера та / або /proc/fs/nfsd/versionsдізнатися, які версії налаштовано для підтримки сервера.
ILMostro_7

-2

Можна відкрити /etc/nfsmount.confта отримати інформацію про типову версію та підтримувану версію.

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.