.. SPDX-License-Identifier: GPL-2.0 .. include:: ../../../disclaimer-vi.rst :Original: Documentation/filesystems/nfs/nfs41-server.rst :Translator: Google Translate (machine translation) :Upstream-at: 8541d8f725c6 .. warning:: Tài liệu này được dịch tự động bằng máy và chưa được review bởi người dịch. Nội dung có thể không chính xác hoặc khó hiểu ở một số chỗ. Khi có sự khác biệt với bản gốc, bản gốc luôn là chuẩn. Bản dịch chất lượng cao (được review) được đặt trong thư mục vi_VN/. ================================ Triển khai máy chủ NFSv4.1 ================================ Hỗ trợ máy chủ cho phiên bản nhỏ 1 có thể được kiểm soát bằng cách sử dụng Tệp kiểm soát /proc/fs/nfsd/versions. Đầu ra chuỗi được trả về bằng cách đọc tệp này sẽ chứa "+4.1" hoặc "-4.1" tương ứng. Hiện tại, hỗ trợ máy chủ cho phiên bản nhỏ 1 được bật theo mặc định. Nó có thể bị vô hiệu hóa trong thời gian chạy bằng cách viết chuỗi "-4.1" vào tệp điều khiển /proc/fs/nfsd/versions. Lưu ý rằng để viết này control, dịch vụ nfsd phải được gỡ bỏ. Bạn có thể sử dụng rpc.nfsd vì điều này; xem rpc.nfsd(8). (Cảnh báo: các máy chủ cũ hơn sẽ hiểu "+4.1" và "-4.1" là "+4" và "-4", tương ứng. Do đó, mã có nghĩa là hoạt động trên cả mới và cũ kernel phải bật hoặc tắt 4.1 ZZ0000ZZ hỗ trợ bật phiên bản 4 bật hoặc tắt; rpc.nfsd thực hiện điều này một cách chính xác.) Việc triển khai NFSv4 phiên bản nhỏ 1 (NFSv4.1) trong nfsd dựa trên trên RFC 5661. Từ nhiều tính năng mới trong NFSv4.1 việc triển khai hiện tại tập trung vào các Phiên NFSv4.1 bắt buộc phải triển khai, cung cấp ngữ nghĩa "chính xác một lần" và khả năng kiểm soát cũng như điều tiết tốt hơn nguồn lực được phân bổ cho từng khách hàng. Bảng bên dưới, được lấy từ tài liệu NFSv4.1, liệt kê các hoạt động bắt buộc phải thực hiện (REQ), tùy chọn (OPT) và các hoạt động NFSv4.0 bắt buộc không triển khai (MNI) trong phiên bản nhỏ 1. Cột đầu tiên cho biết các hoạt động chưa được hỗ trợ bởi việc triển khai máy chủ linux. Các tính năng của OPTIONAL được xác định và tên viết tắt của chúng như sau: - ZZ0000ZZ song song NFS - Phân quyền tệp ZZ0001ZZ - Đoàn thư mục ZZ0002ZZ Các chữ viết tắt sau đây cho biết trạng thái triển khai máy chủ linux. - ZZ0000ZZ Đã triển khai các hoạt động NFSv4.1. - ZZ0001ZZ Không được hỗ trợ. - ZZ0002ZZ* Tính năng tùy chọn chưa được triển khai. Hoạt động ========== +-----------------------+----------------------+---------------------+---------------------------+----------------+ | Implementation status | Operation | REQ,REC, OPT or NMI | Feature (REQ, REC or OPT) | Definition | +=======================+======================+=====================+===========================+================+ | | ACCESS | REQ | | Section 18.1 | +-----------------------+----------------------+---------------------+---------------------------+----------------+ | I | BACKCHANNEL_CTL | REQ | | Section 18.33 | +-----------------------+----------------------+---------------------+---------------------------+----------------+ | I | BIND_CONN_TO_SESSION | REQ | | Section 18.34 | +-----------------------+----------------------+---------------------+---------------------------+----------------+ | | CLOSE | REQ | | Section 18.2 | +-----------------------+----------------------+---------------------+---------------------------+----------------+ | | COMMIT | REQ | | Section 18.3 | +-----------------------+----------------------+---------------------+---------------------------+----------------+ | | CREATE | REQ | | Section 18.4 | +-----------------------+----------------------+---------------------+---------------------------+----------------+ | I | CREATE_SESSION | REQ | | Section 18.36 | +-----------------------+----------------------+---------------------+---------------------------+----------------+ | NS* | DELEGPURGE | OPT | FDELG (REQ) | Section 18.5 | +-----------------------+----------------------+---------------------+---------------------------+----------------+ | | DELEGRETURN | OPT | FDELG, | Section 18.6 | +-----------------------+----------------------+---------------------+---------------------------+----------------+ | | | | DDELG, pNFS | | +-----------------------+----------------------+---------------------+---------------------------+----------------+ | | | | (REQ) | | +-----------------------+----------------------+---------------------+---------------------------+----------------+ | I | DESTROY_CLIENTID | REQ | | Section 18.50 | +-----------------------+----------------------+---------------------+---------------------------+----------------+ | I | DESTROY_SESSION | REQ | | Section 18.37 | +-----------------------+----------------------+---------------------+---------------------------+----------------+ | I | EXCHANGE_ID | REQ | | Section 18.35 | +-----------------------+----------------------+---------------------+---------------------------+----------------+ | I | FREE_STATEID | REQ | | Section 18.38 | +-----------------------+----------------------+---------------------+---------------------------+----------------+ | | GETATTR | REQ | | Section 18.7 | +-----------------------+----------------------+---------------------+---------------------------+----------------+ | I | GETDEVICEINFO | OPT | pNFS (REQ) | Section 18.40 | +-----------------------+----------------------+---------------------+---------------------------+----------------+ | NS* | GETDEVICELIST | OPT | pNFS (OPT) | Section 18.41 | +-----------------------+----------------------+---------------------+---------------------------+----------------+ | | GETFH | REQ | | Section 18.8 | +-----------------------+----------------------+---------------------+---------------------------+----------------+ | NS* | GET_DIR_DELEGATION | OPT | DDELG (REQ) | Section 18.39 | +-----------------------+----------------------+---------------------+---------------------------+----------------+ | I | LAYOUTCOMMIT | OPT | pNFS (REQ) | Section 18.42 | +-----------------------+----------------------+---------------------+---------------------------+----------------+ | I | LAYOUTGET | OPT | pNFS (REQ) | Section 18.43 | +-----------------------+----------------------+---------------------+---------------------------+----------------+ | I | LAYOUTRETURN | OPT | pNFS (REQ) | Section 18.44 | +-----------------------+----------------------+---------------------+---------------------------+----------------+ | | LINK | OPT | | Section 18.9 | +-----------------------+----------------------+---------------------+---------------------------+----------------+ | | LOCK | REQ | | Section 18.10 | +-----------------------+----------------------+---------------------+---------------------------+----------------+ | | LOCKT | REQ | | Section 18.11 | +-----------------------+----------------------+---------------------+---------------------------+----------------+ | | LOCKU | REQ | | Section 18.12 | +-----------------------+----------------------+---------------------+---------------------------+----------------+ | | LOOKUP | REQ | | Section 18.13 | +-----------------------+----------------------+---------------------+---------------------------+----------------+ | | LOOKUPP | REQ | | Section 18.14 | +-----------------------+----------------------+---------------------+---------------------------+----------------+ | | NVERIFY | REQ | | Section 18.15 | +-----------------------+----------------------+---------------------+---------------------------+----------------+ | | OPEN | REQ | | Section 18.16 | +-----------------------+----------------------+---------------------+---------------------------+----------------+ | NS* | OPENATTR | OPT | | Section 18.17 | +-----------------------+----------------------+---------------------+---------------------------+----------------+ | | OPEN_CONFIRM | MNI | | N/A | +-----------------------+----------------------+---------------------+---------------------------+----------------+ | | OPEN_DOWNGRADE | REQ | | Section 18.18 | +-----------------------+----------------------+---------------------+---------------------------+----------------+ | | PUTFH | REQ | | Section 18.19 | +-----------------------+----------------------+---------------------+---------------------------+----------------+ | | PUTPUBFH | REQ | | Section 18.20 | +-----------------------+----------------------+---------------------+---------------------------+----------------+ | | PUTROOTFH | REQ | | Section 18.21 | +-----------------------+----------------------+---------------------+---------------------------+----------------+ | | READ | REQ | | Section 18.22 | +-----------------------+----------------------+---------------------+---------------------------+----------------+ | | READDIR | REQ | | Section 18.23 | +-----------------------+----------------------+---------------------+---------------------------+----------------+ | | READLINK | OPT | | Section 18.24 | +-----------------------+----------------------+---------------------+---------------------------+----------------+ | | RECLAIM_COMPLETE | REQ | | Section 18.51 | +-----------------------+----------------------+---------------------+---------------------------+----------------+ | | RELEASE_LOCKOWNER | MNI | | N/A | +-----------------------+----------------------+---------------------+---------------------------+----------------+ | | REMOVE | REQ | | Section 18.25 | +-----------------------+----------------------+---------------------+---------------------------+----------------+ | | RENAME | REQ | | Section 18.26 | +-----------------------+----------------------+---------------------+---------------------------+----------------+ | | RENEW | MNI | | N/A | +-----------------------+----------------------+---------------------+---------------------------+----------------+ | | RESTOREFH | REQ | | Section 18.27 | +-----------------------+----------------------+---------------------+---------------------------+----------------+ | | SAVEFH | REQ | | Section 18.28 | +-----------------------+----------------------+---------------------+---------------------------+----------------+ | | SECINFO | REQ | | Section 18.29 | +-----------------------+----------------------+---------------------+---------------------------+----------------+ | I | SECINFO_NO_NAME | REC | pNFS files | Section 18.45, | +-----------------------+----------------------+---------------------+---------------------------+----------------+ | | | | layout (REQ) | Section 13.12 | +-----------------------+----------------------+---------------------+---------------------------+----------------+ | I | SEQUENCE | REQ | | Section 18.46 | +-----------------------+----------------------+---------------------+---------------------------+----------------+ | | SETATTR | REQ | | Section 18.30 | +-----------------------+----------------------+---------------------+---------------------------+----------------+ | | SETCLIENTID | MNI | | N/A | +-----------------------+----------------------+---------------------+---------------------------+----------------+ | | SETCLIENTID_CONFIRM | MNI | | N/A | +-----------------------+----------------------+---------------------+---------------------------+----------------+ | NS | SET_SSV | REQ | | Section 18.47 | +-----------------------+----------------------+---------------------+---------------------------+----------------+ | I | TEST_STATEID | REQ | | Section 18.48 | +-----------------------+----------------------+---------------------+---------------------------+----------------+ | | VERIFY | REQ | | Section 18.31 | +-----------------------+----------------------+---------------------+---------------------------+----------------+ | NS* | WANT_DELEGATION | OPT | FDELG (OPT) | Section 18.49 | +-----------------------+----------------------+---------------------+---------------------------+----------------+ | | WRITE | REQ | | Section 18.32 | +-----------------------+----------------------+---------------------+---------------------------+----------------+ Hoạt động gọi lại =================== +--------------+--------------------------+----------------------+--------------------------+---------------+ ZZ0000ZZ Hoạt động Tính năng ZZ0001ZZ (REQ, REC hoặc OPT) ZZ0002ZZ +===========================================================================================================================================================+ ZZ0003ZZ CB_GETATTR ZZ0004ZZ FDELG (REQ) ZZ0005ZZ +--------------+--------------------------+----------------------+--------------------------+---------------+ ZZ0006ZZ CB_LAYOUTRECALL ZZ0007ZZ pNFS (REQ) ZZ0008ZZ +--------------+--------------------------+----------------------+--------------------------+---------------+ ZZ0009ZZ CB_NOTIFY ZZ0010ZZ DDELG (REQ) ZZ0011ZZ +--------------+--------------------------+----------------------+--------------------------+---------------+ ZZ0012ZZ CB_NOTIFY_DEVICEID ZZ0013ZZ pNFS (OPT) ZZ0014ZZ +--------------+--------------------------+----------------------+--------------------------+---------------+ ZZ0015ZZ CB_NOTIFY_LOCK ZZ0016ZZ ZZ0017ZZ +--------------+--------------------------+----------------------+--------------------------+---------------+ ZZ0018ZZ CB_PUSH_DELEG ZZ0019ZZ FDELG (OPT) ZZ0020ZZ +--------------+--------------------------+----------------------+--------------------------+---------------+ ZZ0021ZZ CB_RECALL ZZ0022ZZ FDELG, ZZ0023ZZ +--------------+--------------------------+----------------------+--------------------------+---------------+ ZZ0024ZZ ZZ0025ZZ DDELG, pNFS ZZ0026ZZ +--------------+--------------------------+----------------------+--------------------------+---------------+ ZZ0027ZZ ZZ0028ZZ (REQ) ZZ0029ZZ +--------------+--------------------------+----------------------+--------------------------+---------------+ ZZ0030ZZ CB_RECALL_ANY ZZ0031ZZ FDELG, ZZ0032ZZ +--------------+--------------------------+----------------------+--------------------------+---------------+ ZZ0033ZZ ZZ0034ZZ DDELG, pNFS ZZ0035ZZ +--------------+--------------------------+----------------------+--------------------------+---------------+ ZZ0036ZZ ZZ0037ZZ (REQ) ZZ0038ZZ +--------------+--------------------------+----------------------+--------------------------+---------------+ ZZ0039ZZ CB_RECALL_SLOT ZZ0040ZZ ZZ0041ZZ +--------------+--------------------------+----------------------+--------------------------+---------------+ ZZ0042ZZ CB_RECALLABLE_OBJ_AVAIL ZZ0043ZZ DDELG, pNFS ZZ0044ZZ +--------------+--------------------------+----------------------+--------------------------+---------------+ ZZ0045ZZ ZZ0046ZZ (REQ) ZZ0047ZZ +--------------+--------------------------+----------------------+--------------------------+---------------+ ZZ0048ZZ CB_SEQUENCE ZZ0049ZZ FDELG, ZZ0050ZZ +--------------+--------------------------+----------------------+--------------------------+---------------+ ZZ0051ZZ ZZ0052ZZ DDELG, pNFS ZZ0053ZZ +--------------+--------------------------+----------------------+--------------------------+---------------+ ZZ0054ZZ ZZ0055ZZ (REQ) ZZ0056ZZ +--------------+--------------------------+----------------------+--------------------------+---------------+ ZZ0057ZZ CB_WANTS_CANCELLED ZZ0058ZZ FDELG, ZZ0059ZZ +--------------+--------------------------+----------------------+--------------------------+---------------+ ZZ0060ZZ ZZ0061ZZ DDELG, pNFS ZZ0062ZZ +--------------+--------------------------+----------------------+--------------------------+---------------+ ZZ0063ZZ ZZ0064ZZ (REQ) ZZ0065ZZ +--------------+--------------------------+----------------------+--------------------------+---------------+ Ghi chú thực hiện: ===================== SSV: Thông số kỹ thuật tuyên bố điều này là bắt buộc, nhưng chúng tôi thực sự không biết bất kỳ điều gì triển khai nên hiện tại chúng tôi đang bỏ qua nó. Máy chủ trở lại NFS4ERR_ENCR_ALG_UNSUPP trên EXCHANGE_ID, sẽ phù hợp với tương lai. GSS trên kênh sau: Một lần nữa, về mặt lý thuyết là cần thiết nhưng chưa được triển khai rộng rãi (trong cụ thể, máy khách Linux hiện tại không yêu cầu nó). Chúng tôi trở lại NFS4ERR_ENCR_ALG_UNSUPP trên CREATE_SESSION. DELEGPURGE: chỉ bắt buộc đối với các máy chủ hỗ trợ CLAIM_DELEGATE_PREV và/hoặc CLAIM_DELEG_PREV_FH (cho phép khách hàng giữ các ủy quyền vẫn tồn tại trong suốt quá trình khởi động lại máy khách). Vì vậy chúng ta không cần thực hiện điều này cho bây giờ. EXCHANGE_ID: id triển khai bị bỏ qua CREATE_SESSION: thuộc tính kênh sau bị bỏ qua SEQUENCE: không hỗ trợ đàm phán lại bảng vị trí động (tùy chọn) Giới hạn hợp chất không chuẩn: Không hỗ trợ cho phiên trước kênh phức hợp RPC yêu cầu cả yêu cầu ca_maxrequestsize và phản hồi ca_maxresponsesize, vì vậy chúng tôi có thể không thực hiện đúng lời hứa mà chúng tôi đã đưa ra trong kênh CREATE_SESSION trước đó đàm phán. Xem thêm ZZ0000ZZ