J'essaie de me connecter à un dossier NFS sur mon serveur de développement. Le propriétaire du dossier sur le serveur de développement est darren et le groupe darren.
Lorsque je l'exporte et le monte sur mon Mac à l'aide de l'utilitaire de disque, il se monte, mais lorsque j'essaie d'ouvrir le dossier, il indique que je ne dispose pas d'autorisations. J'ai défini rw, sync et no_subtree_check. L'utilisateur sur le Mac est Darren avec un groupe de groupes.
Dois-je avoir le même groupe et le même utilisateur configuré pour accéder au dossier?
Réponses:
NFS est construit sur l'authentification RPC. Avec NFS version 3, le mécanisme d'authentification le plus courant est AUTH_UNIX. L'ID utilisateur et l'ID groupe du système client sont envoyés dans chaque appel RPC et les autorisations de ces ID sur le fichier en cours d'accès sont vérifiées sur le serveur. Pour que cela fonctionne, les UID et GID doivent être identiques sur le serveur et les clients. Cependant, vous pouvez forcer tous les accès à se produire en tant qu'utilisateur et groupe uniques en combinant les options d'exportation all_squash, anonuid et anongid. all_squash mappera tous les UID et les GID sur l'utilisateur anonyme, et anonuid et anongid définiront l'UID et le GID de l'utilisateur anonyme. Par exemple, si votre UID et votre GID sur votre serveur dev sont tous deux 1001, vous pouvez exporter votre répertoire personnel avec une ligne comme
/home/darren 192.168.1.1/24(rw,all_squash,anonuid=1001,anongid=1001)
Je connais moins bien la version 4 de NFS, mais je pense que vous pouvez configurer rpc.idmapd sur les clients pour modifier l'uid et le gid qu'ils envoient au serveur.
la source
Lorsque vous montez NFS, vos autorisations avec lesquelles vous montez doivent correspondre à ce que vous avez sur le serveur. Par exemple, si votre utilisateur ne dispose que d’un accès en lecture seule, le montage en lecture-écriture vous fera voir les mêmes erreurs que celles mentionnées dans votre message lorsque vous essayez de charger le montage. Malheureusement, cela ne sera visible que lorsque vous accédez au dossier, pas lorsque vous le montez réellement.
Vous voulez également vous assurer que l'utilisateur NFS est exécuté comme sur le serveur et que l'utilisateur du client utilise les mêmes UID et GID. Vous pouvez vérifier ces valeurs en exécutant
id darren
à la fois le serveur et le client. Si les valeurs UID et GID ne correspondent pas, vous pouvez les modifier/etc/passwd
pour le rendre ainsi - mais assurez-vous de bien comprendre ce que vous faites avant de modifier arbitrairement les valeurs!Quelques bonnes sources:
J'espère que ça aide!
la source
Est-ce que vos UID et GID correspondent sur les deux serveurs? C’est ce qu’il utilise pour contrôler l’accès et non le nom de connexion et le nom du groupe.
la source
Pour moi, le problème a été résolu en fournissant
_netdev
une option de montage sur le client.C'est-à-dire ajouter ceci à
/etc/fstab
:la source