如何設定 Windows NFS 共用以便可以在 Linux 上查看其內容?

如何設定 Windows NFS 共用以便可以在 Linux 上查看其內容?

我的 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

相關內容