Какую версию 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?

DW
источник

Ответы:

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.

roaima
источник
1
Как вы можете определить, является ли V4 4.2 или что-то еще (желательно без фактического запуска nfs ... как я не могу смонтировать с клиента по какой-то причине)?
Дилан
@ Дилан, почему бы не задать это как новый вопрос?
Ройма
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 / exports в порядке, nfs-serverбыл перезапущен, exportfs -ravвыглядит хорошо, showmount -e serverс клиента выглядит нормально и т. Д. .. но когда я пытаюсь смонтировать КАЖДЫЙ ВРЕМЯ .. он зависает до mount.nfs: Connection timed out- или-- mount.nfs4: Connection timed out. Так расстраивает. Извините за мою напыщенную речь, которая, вероятно, останется незафиксированной).
Дилан
Итак, я думаю ... Есть ли способ получить версию NFS (например, 4.2 или 4.1 или что у вас) без подключения клиента?
Дилан
Я работал над той же проблемой. Все хорошо, и это работало. Я воссоздал мою Vagrant VM, а затем он перестал работать. Nfsstat показывает, что все вызовы являются плохими вызовами типа badauth.
Знаете
1
@Dylan, сервер настроен для работы с несколькими версиями NFS. В зависимости от конфигурации сервера и / или клиентских способностей / конфигов, существует несколько возможных ответов. Кроме того, если у вас нет клиентов, подключающихся к серверу nfs, вы можете проверить файлы конфигурации вашего сервера и / или /proc/fs/nfsd/versionsвыяснить, какие версии сервер настроен для поддержки.
ILMostro_7
-2

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

Кришна
источник