hỗ trợ NFS?
Nhìn quanh mạng có vẻ như inotify có thể hỗ trợ NFS nhưng trong một thời gian rất hạn chế.
triển lãm 1
Lý do được giải thích trong Hỏi & Đáp về StackOverflow này có tiêu đề: inotify với NFS .
trích từ câu trả lời được chấp nhận
inotify yêu cầu hỗ trợ từ kernel để làm việc. Khi một ứng dụng theo dõi một thư mục, nó sẽ yêu cầu kernel thông báo cho nó khi những thay đổi đó xảy ra. Khi thay đổi xảy ra, ngoài việc ghi những thay đổi đó vào đĩa, kernel cũng thông báo cho quá trình xem.
Trên máy NFS từ xa, sự thay đổi không hiển thị đối với kernel; nó xảy ra hoàn toàn từ xa. NFS có trước inotify và không có hỗ trợ cấp độ mạng cho nó trong NFS, hoặc bất cứ điều gì tương đương.
triển lãm số 2
Nghiên cứu thêm một chút nếu bạn xem trong Câu hỏi thường gặp về inotify
H: Tôi có thể xem sysfs (Procfs, nfs ...) không?
Nói một cách đơn giản: có, nhưng với một số hạn chế. Những hạn chế này khác nhau giữa các phiên bản kernel và có xu hướng nhỏ hơn. Vui lòng đọc thông tin về các hệ thống tập tin cụ thể.
Vậy nó có được hỗ trợ không?
Tôi nghĩ rằng cuối cùng những gì bạn trải nghiệm là NFS không cung cấp một quả táo tương đương với tất cả các tính năng giống như các hệ thống tệp được gắn cục bộ.
Ví dụ từ một chủ đề linux nfs :
- CIFS có các khả năng thông báo được tích hợp sẵn (oplocks)
- NFS cung cấp "hợp đồng thuê" để thông báo
Vấn đề ở đây là hệ thống tập tin thay thế như CIFS và NFS cung cấp rất cơ bản, nếu có hỗ trợ trực tiếp để inotify.
Trạng thái NFS v4
trích từ bài viết của IBM về trạng thái NFS v4
NFS phiên bản 4 cung cấp một giao thức cho máy khách để thiết lập hoặc thiết lập lại trạng thái và liên kết quyền sở hữu các hoạt động trạng thái máy chủ tiếp theo với các trạng thái được thiết lập trước đó. Để giải quyết vấn đề máy khách vắng mặt, máy khách NFS phiên bản 4 phải thường xuyên làm mới trạng thái trong thời gian thuê do máy chủ chỉ định. Khi hết thời gian thuê, máy chủ có thể giải phóng tài nguyên cho máy khách và cung cấp chúng cho các ứng dụng khác.
- Một khách hàng có được thuộc tính hết thời gian thuê do máy chủ chỉ định bằng cách phát hành một hoạt động getattr. getattr không phải là một hoạt động trạng thái, do đó nó không yêu cầu trạng thái trước được thiết lập. Một hoạt động getattr có thể đi trước một hoạt động setclientid hoặc setclientid_conf Confirm.
- Tham khảo thuộc tính trang web thời gian cho máy chủ của NFS để cài đặt và điều chỉnh khoảng thời gian thuê. *
inotify
các sự kiện trên NFS.