Подтвердить что ты не робот

Ошибка Vagrant: NFS сообщает, что ваш файл экспорта недействителен

Я пытаюсь настроить среду разработки Discourse с помощью этих инструкций. Однако, когда я запускаю Vagrant, я получаю сообщение об ошибке:

NFS сообщает, что ваш файл экспорта недействителен. Бродяга делает эту проверку перед внесением любых изменений в файл. Пожалуйста исправьте проблемы ниже и выполнить "бродячую перезагрузку":

Невозможно открыть /etc/exports

Я проверил, и у меня нет папки etc/exports, поэтому я создал ее и запустил vagrant reload. Это меня достало:

/Applications/Vagrant/embedded/gems/gems/vagrant-1.4.1/plugins/hosts/bsd/host.rb:146:in read': Is a directory - /etc/exports (Errno::EISDIR) from /Applications/Vagrant/embedded/gems/gems/vagrant-1.4.1/plugins/hosts/bsd/host.rb:146:in nfs_prune '     из /Applications/Vagrant/embedded/gems/gems/vagrant -1.4.1/plugins/synced_folders/nfs/synced_folder.rb:68:in cleanup' from /Applications/Vagrant/embedded/gems/gems/vagrant-1.4.1/lib/vagrant/action/builtin/synced_folder_cleanup.rb:24:in block in call '     из /Applications/Vagrant/embedded/gems/gems/vagrant -1.4.1/lib/vagrant/action/builtin/synced_folder_cleanup.rb:22:in each_key' from /Applications/Vagrant/embedded/gems/gems/vagrant-1.4.1/lib/vagrant/action/builtin/synced_folder_cleanup.rb:22:in call '     из /Applications/Vagrant/embedded/gems/gems/vagrant -1.4.1/lib/vagrant/action/warden.rb:34:in call' from /Applications/Vagrant/embedded/gems/gems/vagrant-1.4.1/plugins/providers/virtualbox/action/prepare_nfs_valid_ids.rb:12:in call '     из /Applications/Vagrant/embedded/gems/gems/vagrant -1.4.1/lib/vagrant/action/warden.rb:34:in call' from /Applications/Vagrant/embedded/gems/gems/vagrant-1.4.1/lib/vagrant/action/builtin/handle_forwarded_port_collisions.rb:118:in call '     из /Applications/Vagrant/embedded/gems/gems/vagrant -1.4.1/lib/vagrant/action/warden.rb:34:in call' from /Applications/Vagrant/embedded/gems/gems/vagrant-1.4.1/plugins/providers/virtualbox/action/prepare_forwarded_port_collision_params.rb:30:in call '     из /Applications/Vagrant/embedded/gems/gems/vagrant -1.4.1/lib/vagrant/action/warden.rb:34:in call' from /Applications/Vagrant/embedded/gems/gems/vagrant-1.4.1/lib/vagrant/action/builtin/env_set.rb:19:in call '     из /Applications/Vagrant/embedded/gems/gems/vagrant -1.4.1/lib/vagrant/action/warden.rb:34:in call' from /Applications/Vagrant/embedded/gems/gems/vagrant-1.4.1/lib/vagrant/action/builtin/provision.rb:52:in call '     из /Applications/Vagrant/embedded/gems/gems/vagrant -1.4.1/lib/vagrant/action/warden.rb:34:in call' from /Applications/Vagrant/embedded/gems/gems/vagrant-1.4.1/plugins/providers/virtualbox/action/clear_forwarded_ports.rb:13:in call '     из /Applications/Vagrant/embedded/gems/gems/vagrant -1.4.1/lib/vagrant/action/warden.rb:34:in call' from /Applications/Vagrant/embedded/gems/gems/vagrant-1.4.1/plugins/providers/virtualbox/action/set_name.rb:19:in call '     from/Applications/Vagrant/embedded/gems/gems/vagrant-1.4.1/lib/vagrant/action/warden.rb:34:in call' from /Applications/Vagrant/embedded/gems/gems/vagrant-1.4.1/plugins/providers/virtualbox/action/clean_machine_folder.rb:17:in call '     из /Applications/Vagrant/embedded/gems/gems/vagrant -1.4.1/lib/vagrant/action/warden.rb:34:in call' from /Applications/Vagrant/embedded/gems/gems/vagrant-1.4.1/plugins/providers/virtualbox/action/check_accessible.rb:18:in call '     из /Applications/Vagrant/embedded/gems/gems/vagrant -1.4.1/lib/vagrant/action/warden.rb:34:in call' from /Applications/Vagrant/embedded/gems/gems/vagrant-1.4.1/lib/vagrant/action/warden.rb:95:in block in finalize_action '     из /Applications/Vagrant/embedded/gems/gems/vagrant -1.4.1/lib/vagrant/action/warden.rb:34:in call' from /Applications/Vagrant/embedded/gems/gems/vagrant-1.4.1/lib/vagrant/action/warden.rb:34:in call '     из /Applications/Vagrant/embedded/gems/gems/vagrant -1.4.1/lib/vagrant/action/builder.rb:116:in call' from /Applications/Vagrant/embedded/gems/gems/vagrant-1.4.1/lib/vagrant/action/runner.rb:69:in block in run '     из /Applications/Vagrant/embedded/gems/gems/vagrant -1.4.1/lib/vagrant/util/busy.rb:19:in busy' from /Applications/Vagrant/embedded/gems/gems/vagrant-1.4.1/lib/vagrant/action/runner.rb:69:in запустить '     из /Applications/Vagrant/embedded/gems/gems/vagrant -1.4.1/lib/vagrant/action/builtin/call.rb:51:in call' from /Applications/Vagrant/embedded/gems/gems/vagrant-1.4.1/lib/vagrant/action/warden.rb:34:in call '     из /Applications/Vagrant/embedded/gems/gems/vagrant -1.4.1/lib/vagrant/action/warden.rb:95:in block in finalize_action' from /Applications/Vagrant/embedded/gems/gems/vagrant-1.4.1/lib/vagrant/action/warden.rb:34:in call '     from/Applications/Vagrant/embedded/gems/gems/vagrant-1.4.1/lib/vagrant/action/warden.rb:34:in call' from /Applications/Vagrant/embedded/gems/gems/vagrant-1.4.1/lib/vagrant/action/builder.rb:116:in call '     из /Applications/Vagrant/embedded/gems/gems/vagrant -1.4.1/lib/vagrant/action/runner.rb:69:in block in run' from /Applications/Vagrant/embedded/gems/gems/vagrant-1.4.1/lib/vagrant/util/busy.rb:19:in занят '     from/Applications/Vagrant/embedded/gems/gems/vagrant-1.4.1/lib/vagrant/action/runner.rb:69:in run' from /Applications/Vagrant/embedded/gems/gems/vagrant-1.4.1/lib/vagrant/action/builtin/call.rb:51:in call '     из /Applications/Vagrant/embedded/gems/gems/vagrant -1.4.1/lib/vagrant/action/warden.rb:34:in call' from /Applications/Vagrant/embedded/gems/gems/vagrant-1.4.1/lib/vagrant/action/warden.rb:95:in block in finalize_action '     из /Applications/Vagrant/embedded/gems/gems/vagrant -1.4.1/lib/vagrant/action/warden.rb:34:in call' from /Applications/Vagrant/embedded/gems/gems/vagrant-1.4.1/lib/vagrant/action/warden.rb:34:in call '     из /Applications/Vagrant/embedded/gems/gems/vagrant -1.4.1/lib/vagrant/action/builder.rb:116:in call' from /Applications/Vagrant/embedded/gems/gems/vagrant-1.4.1/lib/vagrant/action/runner.rb:69:in block in run '     из /Applications/Vagrant/embedded/gems/gems/vagrant -1.4.1/lib/vagrant/util/busy.rb:19:in busy' from /Applications/Vagrant/embedded/gems/gems/vagrant-1.4.1/lib/vagrant/action/runner.rb:69:in запустить '     из /Applications/Vagrant/embedded/gems/gems/vagrant -1.4.1/lib/vagrant/action/builtin/call.rb:51:in call' from /Applications/Vagrant/embedded/gems/gems/vagrant-1.4.1/lib/vagrant/action/warden.rb:34:in call '     from/Applications/Vagrant/embedded/gems/gems/vagrant-1.4.1/lib/vagrant/action/builtin/config_validate.rb:25:in call' from /Applications/Vagrant/embedded/gems/gems/vagrant-1.4.1/lib/vagrant/action/warden.rb:34:in call '     из /Applications/Vagrant/embedded/gems/gems/vagrant -1.4.1/plugins/providers/virtualbox/action/check_virtualbox.rb:17:in call' from /Applications/Vagrant/embedded/gems/gems/vagrant-1.4.1/lib/vagrant/action/warden.rb:34:in call '     from/Applications/Vagrant/embedded/gems/gems/vagrant-1.4.1/lib/vagrant/action/builtin/call.rb:57:in call' from /Applications/Vagrant/embedded/gems/gems/vagrant-1.4.1/lib/vagrant/action/warden.rb:34:in call '     из /Applications/Vagrant/embedded/gems/gems/vagrant -1.4.1/plugins/providers/virtualbox/action/check_virtualbox.rb:17:in call' from /Applications/Vagrant/embedded/gems/gems/vagrant-1.4.1/lib/vagrant/action/warden.rb:34:in call '     from/Applications/Vagrant/embedded/gems/gems/vagrant-1.4.1/lib/vagrant/action/builtin/config_validate.rb:25:in call' from /Applications/Vagrant/embedded/gems/gems/vagrant-1.4.1/lib/vagrant/action/warden.rb:34:in call '     из /Applications/Vagrant/embedded/gems/gems/vagrant -1.4.1/lib/vagrant/action/warden.rb:95:in block in finalize_action' from /Applications/Vagrant/embedded/gems/gems/vagrant-1.4.1/lib/vagrant/action/warden.rb:34:in call '     from/Applications/Vagrant/embedded/gems/gems/vagrant-1.4.1/lib/vagrant/action/warden.rb:34:in call' from /Applications/Vagrant/embedded/gems/gems/vagrant-1.4.1/lib/vagrant/action/builder.rb:116:in call '     из /Applications/Vagrant/embedded/gems/gems/vagrant -1.4.1/lib/vagrant/action/runner.rb:69:in block in run' from /Applications/Vagrant/embedded/gems/gems/vagrant-1.4.1/lib/vagrant/util/busy.rb:19:in занят '     from/Applications/Vagrant/embedded/gems/gems/vagrant-1.4.1/lib/vagrant/action/runner.rb:69:in run' from /Applications/Vagrant/embedded/gems/gems/vagrant-1.4.1/lib/vagrant/action/builtin/call.rb:51:in call '     из /Applications/Vagrant/embedded/gems/gems/vagrant -1.4.1/lib/vagrant/action/warden.rb:34:in call' from /Applications/Vagrant/embedded/gems/gems/vagrant-1.4.1/plugins/providers/virtualbox/action/check_virtualbox.rb:17:in call '     from/Applications/Vagrant/embedded/gems/gems/vagrant-1.4.1/lib/vagrant/action/warden.rb:34:in call' from /Applications/Vagrant/embedded/gems/gems/vagrant-1.4.1/lib/vagrant/action/builder.rb:116:in call '     из /Applications/Vagrant/embedded/gems/gems/vagrant -1.4.1/lib/vagrant/action/runner.rb: 69: in block in run' from /Applications/Vagrant/embedded/gems/gems/vagrant-1.4.1/lib/vagrant/util/busy.rb:19:in занят '     из /Applications/Vagrant/embedded/gems/gems/vagrant -1.4.1/lib/vagrant/action/runner.rb:69:in run' from /Applications/Vagrant/embedded/gems/gems/vagrant-1.4.1/lib/vagrant/machine.rb:147:in action '     из /Applications/Vagrant/embedded/gems/gems/vagrant -1.4.1/plugins/commands/reload/command.rb:37:in block in execute' from /Applications/Vagrant/embedded/gems/gems/vagrant-1.4.1/lib/vagrant/plugin/v2/command.rb:193:in block in with_target_vms '     из /Applications/Vagrant/embedded/gems/gems/vagrant -1.4.1/lib/vagrant/plugin/v2/command.rb:191:in each' from /Applications/Vagrant/embedded/gems/gems/vagrant-1.4.1/lib/vagrant/plugin/v2/command.rb:191:in with_target_vms '     из /Applications/Vagrant/embedded/gems/gems/vagrant -1.4.1/plugins/commands/reload/command.rb:36:in execute' from /Applications/Vagrant/embedded/gems/gems/vagrant-1.4.1/lib/vagrant/cli.rb:38:in выполнить '     из /Applications/Vagrant/embedded/gems/gems/vagrant -1.4.1/lib/vagrant/environment.rb:484:in cli' from /Applications/Vagrant/embedded/gems/gems/vagrant-1.4.1/bin/vagrant:127:in '     из /Applications/Vagrant/bin/../embedded/gems/bin/vagrant:23:in load' from /Applications/Vagrant/bin/../embedded/gems/bin/vagrant:23:in '

Я нахожусь на Mac (OS X 10.6.8). Как это исправить? Я попытался найти исходное сообщение об ошибке, и все, что я нашел, было несколькими репозиториями, содержащими исходный код Vagrant, который его выбрасывает.

4b9b3361

Ответ 1

Попробуйте использовать известные хорошие версии VirtualBox и Vagrant, отмеченные в Discourse как ваше первое приложение Rails:

У меня была такая же проблема на Mac (OS X 10.9 (Mavericks)), но откат назад к этим версиям, похоже, исправил это для меня.

Ответ 2

У меня были некоторые предыдущие изображения/боксы, установленные в моей установке VirtualBox, поэтому в /etc/exports уже было несколько недопустимых записей. Поэтому я должен был очистить этот файл и перезапустить боксерскую коробку.

NFS is reporting that your exports file is invalid. Vagrant does
this check before making any changes to the file. Please correct
the issues below and execute "vagrant reload":

Вот что я сделал на своей главной машине:

sudo rm /etc/exports
sudo touch /etc/exports

vagrant halt
vagrant up --provision

Ответ 3

Я столкнулся с этой проблемой с Vagrant 1.4.1 и VirtualBox 4.3.6 на OS X 10.9 Mavericks (13A603). Я смог исправить это с помощью простой команды, чтобы создать отсутствующий файл /etc/exports. Запустите это на OS X, а не в гостях, как указано в комментариях ниже.

$ sudo touch /etc/exports

Затем я смог успешно запустить vagrant up. Я столкнулся с другой ошибкой, когда гостевые дополнения не были обновлены, но я исправил эту проблему, установив плагин vagrant-vbguest.

$ vagrant plugin install vagrant-vbguest

а затем быстрый vagrant reload, и я был запущен!

Ответ 4

Для меня эта ошибка начала появляться для рабочей среды Vagrant.

Я переименовал каталог, с которого работал Vagrant. Чтобы исправить это, я запустил "sudo vi/etc/exports" и исправил путь, чтобы он указывал на мой текущий каталог.

Ответ 5

То же самое случилось со мной. Я скопировал свой Vagrantfile из другого проекта и забыл изменить настройки NFS. Это привело к тому, что текущая виртуальная машина смонтировала родительскую папку виртуальной машины, с которой я скопировал исходный файл Vagrant. Поэтому я сделал это:

vagrant halt
vagrant up

По-прежнему такая же ошибка. Поэтому я отслеживал файл экспорта, расположенный в /etc/exports, который выглядит следующим образом:

# VAGRANT-BEGIN: 501 64e10d4d-342e-4f55-b69a-97edda35742f
"/Users/[username]/vagrant" 192.168.11.12 -alldirs -mapall=501:20
# VAGRANT-END: 501 64e10d4d-342e-4f55-b69a-97edda35742f
# VAGRANT-BEGIN: 501 b3c6e7fe-95d4-48db-8876-c89d3e07af8d
"/Users/[username]/Sites/molitech-oms" 192.168.11.124 -alldirs -mapall=501:20
# VAGRANT-END: 501 b3c6e7fe-95d4-48db-8876-c89d3e07af8d
# VAGRANT-BEGIN: 501 3e2aabfd-ce63-441b-85a2-1b51e8beb863
"/Users/[username]/Sites/app" 192.168.11.125 -alldirs -mapall=501:20
# VAGRANT-END: 501 3e2aabfd-ce63-441b-85a2-1b51e8beb863
# VAGRANT-BEGIN: 501 ff92e353-9f6d-48ee-9d76-e29b33f1dd60
"/Users/[username]/Sites" 192.168.11.126 -alldirs -mapall=501:20
# VAGRANT-END: 501 ff92e353-9f6d-48ee-9d76-e29b33f1dd60

Последние два пути одинаковы. Поэтому я удалил последние три строки и запустил:

vagrant halt && vagrant up

Теперь все работает нормально.

OSX 10.11.1 Бродяга 1.7.4

Ответ 6

Я не хотел переживать трудности с понижением. Это то, что я сделал (все-таки потребовалось время, но меньше хлопот, чем понижение IMHO):

  • В VM Vagrantfile для любой синхронизированной папки отключена NFS

    config.vm.synced_folder ".", "/vagrant", nfs: false

  • Удалено/etc/exports

    sudo mv /etc/exports ~/Desktop/exports

  • Переписать/etc/exports

    vagrant up

  • Перезапустите NFS, если вы хотите/нужно включить его на своей виртуальной машине

    config.vm.synced_folder ".", "/vagrant", nfs: true

Ответ 7

Просто запустите следующие команды:

sudo rm /etc/exports
sudo touch /etc/exports
vagrant reload

НЕ используйте "vagrant up --provision", если вы не уверены, что оно не перезапишет текущий статус вашего проекта.

Ответ 8

На Ubuntu 12 host/Ubuntu 12 гостя следующее работало для меня с Discourse:

nfs_setting = RUBY_PLATFORM =~ /darwin/ || RUBY_PLATFORM =~ /linux/
config.vm.synced_folder ".", "/vagrant", id: "vagrant-root", type: "nfs", nfs_udp: "true", nfs_version: "4", :nfs => nfs_setting

Примечание. Мне также пришлось добавить IP-адрес хоста, определенный Vagrant и гостевым IP-адресом, определенным Vagrant, для исключений брандмауэра.