(免責事項: " NFS共有は読み取り専用 "を読んだので、同じ問題ではないと思います)
私のラズベリー(Raspbian)にNFSをセットアップしましたが、OSXからアクセスしようとしています。これまでのところ、私はパーティションをマウントできますが、残念ながら読み取り専用です。さらに詳しい情報:
➜ ~ mount
/dev/disk0s2 on / (hfs, local, journaled)
devfs on /dev (devfs, local, nobrowse)
map -hosts on /net (autofs, nosuid, automounted, nobrowse)
map auto_home on /home (autofs, automounted, nobrowse)
192.168.1.102:/export/data on /media (nfs)
➜ ~ ls -ld /media
drwxr-xr-x 3 root wheel 4096 Mar 8 15:57 /media
pi@raspberrypi ~ $ cat /etc/exports
/export 192.168.0.0/16(rw,fsid=0,insecure,no_subtree_check,async)
/export/data 192.168.0.0/16(rw,nohide,insecure,no_subtree_check,async)
pi@raspberrypi ~ $ cat /etc/idmapd.conf
[General]
Verbosity = 0
Pipefs-Directory = /var/lib/nfs/rpc_pipefs
# set your own domain here, if id differs from FQDN minus hostname
# Domain = localdomain
[Mapping]
Nobody-User = nobody
Nobody-Group = nogroup
先に述べたように、マウントされたディレクトリにファイルを作成しようとすると問題が発生します。
➜ /media touch foo
touch: foo: Permission denied
➜ /media Sudo touch foo
Password:
touch: foo: Permission denied
サーバーからファイルを作成できることに注意してください、問題はnfsマウントにある必要があります。
(ところで私は このガイド に従って全体を設定しました)
これは、osxにパーティションをマウントする方法です。
Sudo mount -t nfs -o rw 192.168.1.102:/export/data /media
これは、読み取り専用ファイルシステムというよりは、権限の問題のように見えます。
Piから、/ export/dataディレクトリを一時的に誰でも書き込み可能にできますか?もしそうなら、クライアントから今書くことができますか?この方法でファイルを作成する場合、所有者は誰ですか?
No_root_squashがない場合、rootユーザーはnobodyにマップされます。それ以外の場合は、ユーザーをクライアントからpi上のユーザーにマップする必要があります。
CentOS 6.5でこの問題が発生しました。 RaspbianがNetworkManagerを使用しているかどうかはわかりませんが、使用している場合は、それが問題である可能性があります。 Network Managerの最新バージョンがrpcbindの邪魔になり、状況によってはnfsに認証されないようです。 Raspbianでdpkg --get-selections | grep -i NetworkManager
を実行すると、これをすばやく見つけることができます。 CentOSでは、ネットワークの設定に影響を与えずに削除できます。うまくいけば、これが役立つかもしれません。
あなたの疑似ルートは/export
:
/ export 192.168.0.0/16(rw,fsid=0,insecure,no_subtree_check,async)
あなたのサブシェアは/media
下 /export
:
/ export/data 192.168.0.0/16(rw,nohide,insecure,no_subtree_check,async)
マウントする代わりに絶対パスを与える:
Sudoマウント-t nfs -o rw 192.168.1.102:/export/data/media
疑似ルートからの相対パスを指定してマウントを試みましたか?
Sudo mount -t nfs -o rw 192.168.1.102:/data /media
?
これが私のインストール(CentOS 7 NFSv4サーバー、Fedoraクライアント)で機能する方法です。
これはNFSv4と関係があります。 -o vers=3
を使えば幸せになります。 rootがNFS共有に大混乱をもたらすことを許可するNFSv4オプションがあると確信していますが、それがまったく機能するようになった後、私は見なくなりました。
# mount -o soft,rw server:/exports/share /mnt/test
# touch /mnt/test/foo
touch: cannot touch '/mnt/test/foo': Permission denied
# umount /mnt/test
# mount -o soft,rw,vers=3 server:/exports/share /mnt/test
# touch /mnt/test/foo
# ls /mnt/test/foo
/mnt/test/foo
# rm /mnt/test/foo
# umount /mnt/test