Phiên bản NFS nào là máy chủ NFS của tôi sử dụng?


14

Tôi đang cài đặt một hệ thống tập tin NFS trên máy của mình. Làm cách nào để tìm ra phiên bản nào của giao thức NFS mà máy chủ sử dụng? Tôi không có quyền truy cập vào máy chủ NFS, nhưng tôi có quyền root trên máy khách của mình.

Có bất cứ điều gì tôi có thể chạy trên máy khách của mình để xác định phiên bản nào của giao thức NFS đang được máy chủ sử dụng không, hoặc phiên bản nào nó hỗ trợ?

Tôi không thể tìm thấy bất kỳ thông tin hữu ích nào trong /var/log/messageshoặc đầu ra gỡ lỗi kernel ( dmesg).

Tôi đã thử chạy nfsstat, nhưng tôi không chắc liệu nó có cung cấp cho tôi bất kỳ thông tin hữu ích nào không. Tuy nhiên, khi tôi chạy nfsstat -sđể yêu cầu thông tin về máy chủ, tôi không thấy gì hữu ích:

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

Khi tôi chạy nfsstat -cđể yêu cầu thông tin về khách hàng, tôi thấy một số thông tin về Client nfs v3, nhưng tôi không chắc làm thế nào để diễn giải điều này. Điều này có cho tôi biết bất cứ điều gì về giao thức được sử dụng giữa máy khách của tôi và máy chủ NFS không? Có nghĩa là tôi hiện đang sử dụng v3 của giao thức NFS? Nó có cho tôi biết bất cứ điều gì về các phiên bản của giao thức NFS mà máy chủ hỗ trợ, ví dụ: NFS v4 không?

Câu trả lời:


21

Các nfsstat -cchương trình sẽ hiển thị cho bạn những phiên bản NFS thực sự được sử dụng.

Nếu bạn chạy, rpcinfo -p {server}bạn sẽ thấy tất cả các phiên bản của tất cả các chương trình RPC mà máy chủ hỗ trợ. Trên hệ thống của tôi, tôi nhận được đầu ra này:

$ 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
    ...

Điều này cho tôi thấy rằng máy chủ NFS của tôi ( localhosttrong ví dụ này) cung cấp các phiên bản 2, 3 và 4 của giao thức NFS trên tất cả UDP và TCP.


1
Làm thế nào bạn có thể biết nếu V4 là 4.2 hoặc một cái gì đó khác (tốt nhất là không có nfs thực sự chạy .. vì tôi không thể gắn kết từ máy khách vì một số lý do)?
Dylan

@Dylan tại sao không hỏi đó là một câu hỏi mới?
roaima

5

Tùy thuộc vào hệ điều hành và phiên bản của bạn, có thể có nhiều cách khác nhau để kiểm tra nó.

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

Nhưng bạn có thể chắc chắn

# 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

đó rõ ràng là cùng một đầu ra.

Nó hiển thị vers=3trên máy chủ, và mountvers=3.


2
grep nfs /proc/mounts(đối với tôi trên máy chủ) chỉ hiển thị nfsd /proc/nfsd nfsd rw,realtime 0 0. Tôi không có khách hàng thực sự gắn kết (tôi không thể làm cho nó hoạt động). Mọi thứ dường như tốt (sử dụng nfs4 trên cả hai, địa chỉ IP là chính xác, / etc / exports là tốt, nfs-serverđã được khởi động lại, exportfs -ravcó vẻ tốt đẹp, showmount -e servertừ khách hàng ngoại hình tốt, vv .. nhưng khi tôi cố gắng để gắn kết MỌI LÚC NÀO .. nó bị treo cho đến khi mount.nfs: Connection timed out- hay-- mount.nfs4: Connection timed out. Thật là bực bội. Xin lỗi vì lời nói của tôi có lẽ sẽ không được trộn lẫn ).
Dylan

vì vậy, tôi đoán .. có cách nào để có được phiên bản nfs (như 4.2 hoặc 4.1 hoặc bạn có gì) mà không cần cài đặt máy khách không?
Dylan

Tôi đã làm việc chăm chỉ về cùng một vấn đề. Tất cả đều ổn và nó được sử dụng để làm việc. Tôi đã tạo lại máy ảo Vagrant của mình và sau đó nó ngừng hoạt động. Nfsstat cho thấy rằng tất cả các cuộc gọi là badcalls của typ badauth.
onknows

1
@Dylan, máy chủ được cấu hình để vận hành w / nhiều phiên bản của NFS. Tùy thuộc vào cấu hình máy chủ và / hoặc khả năng / cấu hình máy khách, có nhiều câu trả lời có thể có. Hơn nữa, nếu bạn không có bất kỳ máy khách nào kết nối với máy chủ nfs, bạn có thể kiểm tra tệp cấu hình máy chủ của mình và / hoặc /proc/fs/nfsd/versionsđể tìm hiểu phiên bản nào máy chủ được cấu hình để hỗ trợ.
ILMostro_7

-2

Người ta có thể mở /etc/nfsmount.confvà lấy thông tin về phiên bản mặc định và phiên bản được hỗ trợ.

Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.