Linux でその内容を表示できるように Windows NFS 共有を設定するにはどうすればよいですか?

Linux でその内容を表示できるように Windows NFS 共有を設定するにはどうすればよいですか?

私の NFS サーバーは、Microsoft Windows Services for Unix がインストールされた Windows XP SP3 ボックスです。

共有名 NFS と ANSI エンコードを使用して、C:\NFS の下に共有を構成しています。

匿名アクセスが有効になっており、匿名 UID/GID は 0/0 に設定されています。さらに、すべてのマシンを読み取り/書き込みに設定し、ルート アクセスを許可するチェックボックスをオンにしました。

私の最初のNFSクライアントは、nfs-commonがインストールされたUbuntu 10.04ボックスです。

sudo mount -t nfs 1.1.1.1:/NFS /home/user/NFS

成功しましたが、フォルダーを表示しようとすると (ルートとしてであっても)、フォルダーの内容を表示するために必要な権限がないというメッセージが表示されます。

私の 2 番目の 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 固有の設定がある可能性があります。Everyone または 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

関連情報