了解 ONTAP SMB 唯讀位
唯讀位元是逐一檔案設定、以反映檔案是可寫入(停用)或唯讀(啟用)。
使用Windows的SMB用戶端可以設定每個檔案的唯讀位元。NFS用戶端不會設定每個檔案的唯讀位元、因為NFS用戶端沒有任何使用每個檔案唯讀位元的傳輸協定作業。
當使用Windows的SMB用戶端建立檔案時、可以在檔案上設定唯讀位元。ONTAP在NFS用戶端和SMB用戶端之間共用檔案時、也可以設定唯讀位元。ONTAP有些軟體在NFS用戶端和SMB用戶端使用時、需要啟用唯讀位元。
為了在NFS用戶端和SMB用戶端之間共用的檔案上保留適當的讀取和寫入權限、它會根據下列規則來處理唯讀位元:ONTAP
-
NFS會將任何啟用唯讀位元的檔案視為未啟用寫入權限位元。
-
如果NFS用戶端停用所有寫入權限位元、且至少有一個位元先前已啟用、ONTAP 則會啟用該檔案的唯讀位元。
-
如果NFS用戶端啟用任何寫入權限位元、ONTAP 則無法使用該檔案的唯讀位元。
-
如果已啟用檔案的唯讀位元、且NFS用戶端嘗試探索檔案的權限、則檔案的權限位元不會傳送至NFS用戶端;ONTAP 而是將權限位元傳送至NFS用戶端、並遮罩寫入權限位元。
-
如果已啟用檔案的唯讀位元、且SMB用戶端停用唯讀位元、ONTAP 則會啟用檔案的擁有者寫入權限位元。
-
啟用唯讀位元的檔案只能由root寫入。
唯讀位元以下列方式與 ACL 和 Unix 模式位元互動:
當檔案設定了唯讀位元:
-
該文件的 ACL 不會發生任何變更。 NFS用戶端將看到與設定唯讀位元之前相同的 ACL。
-
任何允許對檔案進行寫入存取的 Unix 模式位元都會被忽略。
-
NFS 和 SMB 用戶端都可以讀取該文件,但不能修改它。
-
ACL 和 UNIX 模式位元將被忽略,取而代之的是唯讀位元。這意味著,即使 ACL 允許寫入訪問,只讀位元也會阻止修改。
當檔案未設定唯讀位元:
-
ONTAP根據 ACL 和 UNIX 模式位元決定存取權限。
-
如果 ACL 或 UNIX 模式位元拒絕寫入訪問,則 NFS 和 SMB 用戶端無法修改該檔案。
-
如果 ACL 和 UNIX 模式位元均不拒絕寫入訪問,則 NFS 和 SMB 用戶端可以修改該檔案。
-
|
檔案權限的變更會立即在SMB用戶端上生效、但如果NFS用戶端啟用屬性快取、則可能不會立即在NFS用戶端上生效。 |