Řešení 1:
NFS je postaven na autentizaci RPC. U NFS verze 3 je nejběžnějším mechanismem ověřování AUTH_UNIX. ID uživatele a ID skupiny klientského systému se odesílají při každém volání RPC a na serveru se kontrolují oprávnění, která mají tato ID k souboru, ke kterému se přistupuje. Aby to fungovalo, musí být UID a GID stejné na serveru a klientech. Můžete však vynutit, aby veškerý přístup probíhal jako jeden uživatel a skupina, a to kombinací možností exportu all_squash, anonuid a anongid. all_squash namapuje všechna UID a GID na anonymního uživatele a anonuid a anongid nastavte UID a GID anonymního uživatele. Pokud je například vaše UID a GID na vašem dev serveru obě 1001, můžete exportovat svůj domovský adresář s řádkem jako
/home/darren 192.168.1.1/24(rw,all_squash,anonuid=1001,anongid=1001)
Jsem méně obeznámen s NFS verze 4, ale myslím, že můžete nastavit rpc.idmapd na klientech, abyste změnili uid a gid, které odesílají na server.
Řešení 2:
Když připojíte NFS, vaše oprávnění, se kterými jej připojujete, musí odpovídat tomu, co máte na serveru. Pokud má váš uživatel například přístup pouze pro čtení, jeho připojení pomocí čtení a zápisu způsobí, že při pokusu o skutečné načtení připojení uvidíte stejné chyby, jaké jste zmínili ve svém příspěvku. Bohužel se to ukáže POUZE při přístupu ke složce, nikoli při jejím skutečném připojení.
Také se chcete ujistit, že uživatel NFS běží jako na serveru a že uživatel na klientovi používá stejné UID a GID. Tyto hodnoty můžete zkontrolovat spuštěním id darren
jak na serveru, tak na klientovi. Pokud se hodnoty UID a GID neshodují, můžete upravit /etc/passwd
aby tomu tak bylo – ale ujistěte se, že rozumíte tomu, co děláte, než svévolně změníte hodnoty!
Některé dobré zdroje:
- http://nfs.sourceforge.net/nfs-howto/ar01s07.html#pemission_issues
- http://support.apple.com/kb/TA22243
Doufám, že to pomůže!
Řešení 3:
Shodují se vaše UID a GID na obou serverech? To je to, co používá k řízení přístupu a ne přihlašovací jméno a název skupiny.