Я монтирую файловую систему 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?
решение1
Программа 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.
решение2
В зависимости от вашей ОС и версии могут быть разные способы проверки.
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
.
решение3
Можно открыть /etc/nfsmount.conf
и получить информацию о версии по умолчанию и поддерживаемой версии.