This ghetto patch attempts to fix shared folder automounting for guests running
Linux 4.16, and also suggests an alternative to mount.vboxsf.
diff -uprb VirtualBox-5.2.8.orig/src/VBox/Additions/common/VBoxService/VBoxServiceAutoMount.cpp VirtualBox-5.2.8/src/VBox/Additions/common/VBoxService/VBoxServiceAutoMount.cpp
--- VirtualBox-5.2.8.orig/src/VBox/Additions/common/VBoxService/VBoxServiceAutoMount.cpp 2018-02-26 17:57:30.000000000 +0200
+++ VirtualBox-5.2.8/src/VBox/Additions/common/VBoxService/VBoxServiceAutoMount.cpp 2018-04-07 21:00:05.785735622 +0300
@@ -329,6 +329,13 @@ static int vbsvcAutoMountSharedFolder(co
"vboxsf",
fFlags,
szOptBuf);
+ if (r == -1 && errno == EINVAL)
+ {
+ /* Mainline vboxsf accepts regular mount opts. */
+ char mount_opts[1024];
+ snprintf(mount_opts, 1024, "%s,dmode=0770,fmode=0770", szOptBuf);
+ r = mount(pszShareName, pszMountPoint, "vboxsf", fFlags, mount_opts);
+ }
if (r == 0)
{
VGSvcVerbose(0, "vbsvcAutoMountWorker: Shared folder '%s' was mounted to '%s'\n", pszShareName, pszMountPoint);
diff -uprb VirtualBox-5.2.8.orig/src/VBox/Additions/linux/sharedfolders/mount.vboxsf.c VirtualBox-5.2.8/src/VBox/Additions/linux/sharedfolders/mount.vboxsf.c
--- VirtualBox-5.2.8.orig/src/VBox/Additions/linux/sharedfolders/mount.vboxsf.c 2018-02-26 17:57:34.000000000 +0200
+++ VirtualBox-5.2.8/src/VBox/Additions/linux/sharedfolders/mount.vboxsf.c 2018-04-07 21:39:38.121577588 +0300
@@ -485,6 +485,11 @@ main(int argc, char **argv)
* to keep this code here slick without having VbglR3.
*/
err = mount(host_name, mount_point, "vboxsf", flags, &mntinf);
+ if (err == -1 && errno == EINVAL)
+ {
+ /* The mount.vboxsf helper should not be used with mainline vboxsf. */
+ panic("mount.vboxsf cannot be used with mainline vboxsf; instead use:\n\n mount -cit vboxsf NAME MOUNTPOINT\n\n");
+ }
if (err == -1 && errno == EPROTO)
{
/* Sometimes the mount utility messes up the share name. Try to