Désolé pour les erreurs de langue que j'ai commises. J'essaie d'empêcher vagabond de demander le mot de passe lorsqu'il monte des dossiers partagés par NFS:
[server] Exporting NFS shared folders...
Preparing to edit /etc/exports. Administrator privileges will be required...
[sudo] password for timur: #!!!
J'ai redéfini de nombreuses ressources en ligne comme github et d'autres articles d'auteur, mais rien ne fonctionne pour moi ...
J'ai essayé les instructions ont été trouvées ici . Je n'ai pas de connaissances approfondies en cli. Quelqu'un pourrait-il donc donner une solution correcte à mon problème?
command-line
virtualbox
sudo
nfs
vagrant
Timur Fayzrakhmanov
la source
la source
nfs-server
installé sur votre machine.Réponses:
Les documents officiels de Vagrant couvrent désormais ceci: https://www.vagrantup.com/docs/synced-folders/nfs.html#root-privilege-requirement
Vous devez ajouter des entrées au
/etc/sudoers
fichier et la façon de le modifier consiste à le saisir sur le terminal:sudo visudo
Tapez votre mot de passe et vous modifiez le fichier. Vous voudrez coller ces lignes ci-dessous (selon que vous exécutez Vagrant sur OS X ou Linux.
Si vous n'êtes pas familier avec vim , dans lequel il s'ouvre, cette page vous a aidé . Fondamentalement, copiez le bloc de texte approprié ci-dessous. Ensuite, dans visudo, allez à l'endroit où vous souhaitez coller du texte dans le fichier (la fin du fichier est très bien), et appuyez sur "i" pour passer en mode insertion. CMD + V pour coller votre texte. Ensuite, appuyez sur ÉCHAP, puis tapez
:w
pour enregistrer vos modifications, puis:q
pour quitter.À partir de la version 1.7.3 , le fichier sudoers sous OS X devrait avoir ces entrées:
Et Linux devrait avoir ces entrées:
Notez que ceux-ci changent d'une version de Vagrant à une autre, donc ce qui précède peut être obsolète. L'important est que les documents le couvrent maintenant.
la source
/var/log/auth.log
ne contient que des commandes qui y sont répertoriées et que je peux vérifier manuellement que les autorisations sudo fonctionnent./etc/sudoers.d
pour éviter de futurs conflits lors de la mise à jour du système d'exploitation. Sur Ubuntu:sudo visudo -f /etc/sudoers.d/vagrant-nfs
ou OSX:sudo visudo -f /private/etc/sudoers.d/vagrant-nfs
sudo EDITOR=nano visudo
commande, qui vous permet de contourner complètement vim .Les commandes exactes peuvent changer entre les versions de Vagrant, il est donc impossible de lister celles qui fonctionneraient toujours.
Quoi qu'il en soit, les règles sudoers dans cet esprit devraient être encore assez proches. Consultez /var/log/auth.log s'il révèle les commandes réelles de votre version de Vagrant et adaptez les règles en conséquence.
la source
Pour tous ceux qui font cela pour OSX (je suis sur MacOS Sierra version 10.12.6), j'ai eu du mal avec les autorisations même après avoir ajouté ces lignes. Ce message a vraiment aidé:
Fondamentalement, c'est le fait que vous n'avez pas d'autorisations définies pour ce dossier vous-même. Vous devez donc exécuter:
la source
l'ajout
, nfs_export: false
à la fin desconfig.vm.synced_folder
lignes dans le Vagrantfile, l'a résolu pour moi.Si vous avez déjà une configuration nfs fonctionnelle et que vous n'avez pas besoin que votre Vagrant l'écrase à chaque démarrage, vous pouvez simplement désactiver l'écriture dans le fichier d'exportation.
Cela résout également le problème de collision, si vous avez plus d'un Vagrant essayant d'accéder au même dossier, comme par exemple 2 Vagrants presque identiques, un exécutant php 5.6 et un exécutant php 7.2.
la source
TL&DR: ajoutez le fichier override.vm.synced_folder suivant ".", "/ Vagrant", désactivé: vrai
Rationnel: Par défaut, le Vagrant essaie de détecter tous les dossiers NFS / SMB. Bien que je puisse comprendre pourquoi les développeurs ont ajouté cette fonctionnalité, pour mon cas d'utilisation, c'est très ennuyeux. La solution consiste à simplement désactiver la synchronisation des dossiers NFS.
Cela peut être fait en remplaçant l'option de dossier synchronisé VM. J'ai joint la configuration suivante pour l'océan numérique pour votre considération, afin que vous puissiez voir la configuration entière.
la source