Bug 988641

Summary: Cannot mount vmhgfs shares in virtual guest with open-vm-tools
Product: [Fedora] Fedora Reporter: Andrew Lofthouse <loftyhauser>
Component: open-vm-toolsAssignee: Ravindra Kumar <ravindrakumar>
Status: CLOSED WONTFIX QA Contact: Fedora Extras Quality Assurance <extras-qa>
Severity: medium Docs Contact:
Priority: unspecified    
Version: 19CC: jochen.wiedmann, loftyhauser, negativo17, ravindrakumar, rjones
Target Milestone: ---   
Target Release: ---   
Hardware: x86_64   
OS: Windows   
Whiteboard:
Fixed In Version: Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2013-07-26 08:11:34 UTC Type: Bug
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:

Description Andrew Lofthouse 2013-07-26 03:41:28 UTC
Description of problem:
Installed Fedora 19 virtual machine (in VMWare Player on Windows 7 host).  Open-vm-tools was automatically installed.  Configured C:\Users as a share, but could not mount the share in the virtual machine.

Version-Release number of selected component (if applicable):
open-vm-tools-9.2.3-5.fc19.x86_64

How reproducible:
Always

Steps to Reproduce:
1. Install Fedora 19 in VMWare Player
2. Configure a shared file location
3. Create the mountpoint: # mkdir /mnt/hgfs
4. Try to mount the share: # mount -t vmhgfs .host:/Users /mnt/hgfs -or- # mount -t vmhgfs .host:/ /mnt/hgfs

Actual results:
Error emitted and /mnt/hgfs is clean (no entries):
Error: cannot mount filesystem: No such device

Expected results:
No error and shared folder mounted at /mnt/hgfs

Comment 1 Richard W.M. Jones 2013-07-26 07:30:04 UTC
What is the error?  Look at dmesg and copy any errors there too.

Comment 2 Ravindra Kumar 2013-07-26 08:00:46 UTC
Richard, if you remember we had this discussion in the original bug too. open-vm-tools package contains only user space components. Shared folder requires hgfs kernel driver to work. So, this is expected behavior.

Currently, one needs to get the hgfs driver either by building it from open-vm-tools source code or install new version of VMware Tools (yet to be released) that would let you install the missing drivers without having to uninstall open-vm-tools.

Long term plan is to get rid of the kernel driver piece.

I would like to close this bug because we are aware of this and working on it indirectly.

Comment 3 Richard W.M. Jones 2013-07-26 08:11:34 UTC
OK, this makes sense.

To the reporter: This cannot be fixed because Fedora
doesn't allow non-upstream kernel modules to be added.
Therefore you either have to build your own kernel (or module)
or wait for this to be fixed upstream (see previous comment).

Comment 4 Jochen Wiedmann 2015-11-04 10:31:57 UTC
Couple of questions:

1.) Do you have a quote that justifies the statement "Fedora
doesn't allow non-upstream kernel modules to be added"? It is, at best, non obvious. The kernels license certainly allows to ship additional modules, and the open-vm-tools are distributed under the terms of GPL, version 2, so they are quite compatible with the kernel license.

2.) If Fedora can't ship the module itself, it should at least be possible to ship it as part of RPMFusion, or something similar. Could you drop some words on what needs to be done technically to achieve that.

Thanks,

Jochen

Comment 5 Richard W.M. Jones 2015-11-04 16:32:22 UTC
1) https://fedoraproject.org/wiki/Packaging:Guidelines#No_External_Kernel_Modules

2) It would certainly be possible to ship it as an akmod in
RPMFusion.  Apparently this is how to do that:
http://rpmfusion.org/Packaging/KernelModules/Akmods

I'd actually much prefer that the module went upstream, but I've
no idea what's involved with that, or indeed why it's not upstream
now.  Maybe there's a licensing issue?  I guess VMware can provide
the answer to that.

Comment 6 Jochen Wiedmann 2015-11-05 07:28:37 UTC
A more important information: In general, the Kernel module isn't needed, because the open-vm-tools contain a program called vmhgfs-fuse, and I can mount a shared VMWare folder named "foo" like this:

    # Show a list of all folders:
    $ vmware-hgfsclient
    foo

    # Create a directory /home/user/windows, and mount the shared folder
    mkdir /home/user/windows
    vmhgfs .host:foo /home/user/windows

Note, in particular, that no root privileges in the Linux guest are required.

Comment 7 Ravindra Kumar 2015-11-07 02:36:26 UTC
(In reply to Richard W.M. Jones from comment #5)
> I'd actually much prefer that the module went upstream, but I've
> no idea what's involved with that, or indeed why it's not upstream
> now.  Maybe there's a licensing issue?  I guess VMware can provide
> the answer to that.

Thanks Richard. There is no licensing issue. It is just that the kernel driver is not ready for upstream and it will require lot of convincing Linux kernel community to accept yet another filesystem driver in presence of NFS and SMB alternatives already being there.

(In reply to Jochen Wiedmann from comment #6)
> A more important information: In general, the Kernel module isn't needed,
> because the open-vm-tools contain a program called vmhgfs-fuse, and I can
> mount a shared VMWare folder named "foo" like this:
> 
>     # Show a list of all folders:
>     $ vmware-hgfsclient
>     foo
> 
>     # Create a directory /home/user/windows, and mount the shared folder
>     mkdir /home/user/windows
>     vmhgfs .host:foo /home/user/windows
> 
> Note, in particular, that no root privileges in the Linux guest are required.

Yes, that's right. open-vm-tools v10.0.0 ships Fuse based solution now. We no longer require vmhgfs kernel driver for Shared Folders. So, let's not worry about the driver, just use open-vm-tools v10.0.0 or later :)