From 6f260d14fa9543fe74ce41190aad105d7de54776 Mon Sep 17 00:00:00 2001 From: Rob Smith Date: Sat, 17 Sep 2016 19:26:34 -0700 Subject: [PATCH] Fix shared directory mounting on provisioning Due to how the opensuse/openSUSE-42.1-x86_64 box is, there is no vagrant group by default. When the shared folder is attemtped to mount, it fails with the following ``` ==> default: Mounting shared folders... default: /vagrant => /Users/kormoc/Projects/osem Vagrant was unable to mount VirtualBox shared folders. This is usually because the filesystem "vboxsf" is not available. This filesystem is made available via the VirtualBox Guest Additions and kernel module. Please verify that these guest additions are properly installed in the guest. This is not a bug in Vagrant and is usually caused by a faulty Vagrant box. For context, the command attemped was: set -e mount -t vboxsf -o uid=`id -u vagrant`,gid=`getent group vagrant | cut -d: -f3` vagrant /vagrant mount -t vboxsf -o uid=`id -u vagrant`,gid=`id -g vagrant` vagrant /vagrant The error output from the command was: No such file or directory ``` This change will fix this issue to allow a single `vagrant up` to work correctly To test this, you can run `vagrant destroy;vagrant up`. This will destroy your current environment and rebuild it from scratch. --- Vagrantfile | 11 +++++++++++ 1 file changed, 11 insertions(+) diff --git a/Vagrantfile b/Vagrantfile index 827cb8ed..e2faad9d 100644 --- a/Vagrantfile +++ b/Vagrantfile @@ -39,6 +39,17 @@ Vagrant.configure(2) do |config| # argument is a set of non-required options. # config.vm.synced_folder "../data", "/vagrant_data" + # When using the default settings, we will attempt to mount this share + # as the vagrant user and the vagrant group. Alas, box opensuse/openSUSE-42.1-x86_64 + # does not have the vagrant group created, so this share fails and + # requires manual mounting for the vagrant setup to continue. Setting + # to the hardcoded numbers will allow the mount to successfully + # mount without working about the group mismatch + VAGRANT_UID = 1000 # User vagrant + VAGRANT_GID = 100 # Group users + config.vm.synced_folder ".", "/vagrant", + owner: VAGRANT_UID, group: VAGRANT_GID + # Provider-specific configuration so you can fine-tune various # backing providers for Vagrant. These expose provider-specific options. # Example for VirtualBox: