你好,
你遇到的問題其實是 Windows Server NFS 在處理 Linux POSIX 權限時,沒有正確將模式位元轉換成 NTFS ACL,導致檔案在寫入後被簡化成 700。這種情況通常出現在沒有啟用「進階 ACL 翻譯」的環境裡。
解決方式是在 Windows Server 上啟用 NFS 的 ACL 翻譯功能,並確保共用已經支援 Active Directory 身份映射。你可以透過以下步驟來處理:
在 Windows Server 上執行:
nfsadmin server configure translate=enabled
這會啟用 ACL 翻譯。接著針對你的 NFS 共用,啟用進階 ACL:
Set-NfsShare -Name <ShareName> -EnableNfsAdvancedAcl $true
這樣,Linux 端寫入的檔案就會依照使用者的 AD 身份正確映射到 NTFS ACL,而不是退回到單純的 700 權限。
同時,請檢查 Linux 客戶端的掛載選項,建議使用 sec=krb5 或 sec=krb5i/krb5p,而不是 sec=sys。這樣才能確保 Kerberos 驗證與 AD 帳號正確對應,避免權限被簡化。
總結來說,問題的根源在於 Windows NFS Server 的預設行為過於簡化,必須透過啟用進階 ACL 翻譯並搭配 Kerberos 驗證,才能讓 Linux 與 Windows 之間的權限保持一致。
希望这里的内容对您有所帮助。如果您觉得它让您对该问题有了更深入的了解,欢迎采纳该回答。如有其他疑问,请随时留言。祝您生活愉快!
DV.