
我的 NFS 伺服器是一個 Windows XP SP3 機器,安裝了 Microsoft Windows Services for Unix。
我在 C:\NFS 下配置了一個共享,共享名稱為 NFS,編碼為 ANSI。
啟用匿名訪問,匿名 UID/GID 設定為 0/0。此外,我已將“所有機器”設定為“讀寫”,並選取“允許根存取”複選框。
我的第一個 NFS 用戶端是 Ubuntu 10.04,安裝了 nfs-common。跑步
sudo mount -t nfs 1.1.1.1:/NFS /home/user/NFS
成功,但是當我嘗試查看該資料夾(即使以 root 身份)時,它告訴我沒有查看該資料夾內容所需的權限。
我的第二個 NFS 用戶端是執行 OS/400 V5R3 的 IBM iSeries 機器。我使用下面的掛載命令:
MOUNT TYPE(*NFS) MFS('1.1.1.1:/NFS') MNTOVRDIR('/PARENT/NFS') OPTIONS('rw,nosuid,retry=5,rsize=8096,wsize=8096,timeo=20,retrans=2,acregmin=30,acregmax=60,acdirmin=30,acdirmax=60,soft') CODEPAGE(*BINARY *ASCII)
也安裝成功。試圖
WRKLNK '/PARENT/NFS'
並使用選項 5 進入目錄會產生無權反對錯誤 - 即使我是具有 *ALLOBJ 特殊權限的安全官員。
我的直覺告訴我這是 Windows 共享的問題,但我不知道可能是什麼。你有什麼建議嗎?
答案1
有任何理由不只是使用森巴舞在 *NIX 盒子上?這樣,您可以從 Windows 存取 *NIX 機器上的共用,也可以在 *NIX 機器上掛載 Windows 共用。
“Microsoft Windows Services for Unix”,不知怎的,光是讀它就讓我感到胃灼熱。
答案2
您是否檢查過您是否具有對該目錄及其子目錄授予的執行權限(在 Unix 中,應用於資料夾時意味著「列出資料夾」)?可能有一些 Windows 特定設定可能是等效的,例如「清單資料夾」或「遍歷資料夾」。將其授予每個人或任何正在運行的 NFS 伺服器。您是超級使用者/QSECOFR 並不重要客戶另一方面,重要的是伺服器的帳戶 ID 有權執行什麼操作、目錄的權限是什麼、您的客戶端使用者 ID 映射到哪個伺服器使用者 ID(如果是 id 映射,則此處並非如此)。
此處並非如此:目錄權限多於導出的也可能導致類似的錯誤。例如,假設您匯出了目錄 c:\foo\bar\baz,並且對 baz 授予了所有適當的權限,但 foo 的權限不允許 NFS 伺服器存取 baz。錯誤!
如果可能的話,打開伺服器上的日誌記錄並查看日誌。
答案3
我不確定 XP 是否如此。但是,我在 Windows Server 2012 上遇到了類似的問題。網路存取:讓Everyone權限應用於匿名用戶政策制定下安全性設定\本機原則\安全選項。
我在此頁面上找到了解決方案:
http://technet.microsoft.com/en-us/library/hh509019%28v=ws.10%29.aspx