Parallels / vagrant-parallels

Vagrant Parallels Provider
https://parallels.github.io/vagrant-parallels
MIT License
996 stars 87 forks source link

Directory not showing up when using a FUSE fs with Parallels 14 #333

Closed mpdude closed 1 year ago

mpdude commented 6 years ago

This is a follow-up for #330. Possibly it's the same error, namely if the FUSE implementation does something with mmap and thus sees an outdated cache? I ran into this because using the vagrant-bindfs plugin seemed to work around #330.

Must be an issue with Parallels Tools, not this plugin here itself.

1) Install the vagrant-bindfs plugin: https://github.com/gael-ian/vagrant-bindfs 2) Use this Vagrantfile:

Vagrant.configure(2) do |config|
  config.vm.box = "bento/ubuntu-18.04"

  config.vm.synced_folder "~", "/vagrant-home", mount_options: ["noatime"]
  # bind_folder parameters what I happened to have in my file, probably irrelevant here
  config.bindfs.bind_folder "/vagrant-home", "/mnt", perms: "0664,a+X", group: "www-data", chgrp_ignore: true, chown_ignore: true, create_with_perms: "0664,a+X", o: "nonempty", m: 'vagrant,www-data'

  config.vm.provider "parallels" do |prl|
    prl.update_guest_tools = true
  end
end

3) vagrant up; possibly vagrant reload due to #325. If the machine is up, SSH into it. 4) prltoolsd -V shows Parallels Tools: 14.0.45154 5) On OS X, mkdir ~/foobar. 6) In the VM, ls -alh /mnt: The foobar directory is missing. 7) In the VM, cd /mnt/foobar: Works! 8) In the VM, cd ~; rmdir /mnt/foobar: Works! 9) Confirm the directory has been removed in OS X as well.

romankulikov commented 5 years ago

Confirm the problem. Issue is reproduced for me.

P.S. Just curious, why do you need to use bindfs here in VM? What permission issues are you trying to solve?

mpdude commented 5 years ago

I had the bindfs setup around from times where I had to use NFS to share files between the host and guest. NFS just forwards the UID/GID from the host, so bindfs can help to fix that.

I think prl_fs can work out of the box, because it always shows files with the UID/GID of the current process.

When I ran into #330, it turned out bindfs works around the cached file contents issue, but brings this issue here instead.

mpdude commented 5 years ago

Oh, IIRC there was yet another issue with Parallels Tools v14: You cannot tail a logfile that Apache has open if it resides on a shared folder. An strace shows an nmap call fails, tail then (mistakenly?) exits with a “not enough memory” error message.

Sounds related to #330 – fancy yet another issue?

romankulikov commented 5 years ago

Oh, IIRC there was yet another issue with Parallels Tools v14: You cannot tail a logfile that Apache has open if it resides on a shared folder. An strace shows an nmap call fails, tail then (mistakenly?) exits with a “not enough memory” error message.

Sounds related to #330 – fancy yet another issue?

Is it reproduced on 14.1.0?

mpdude commented 5 years ago

@romankulikov You mean Parallels Tools from 14.1.0 might contain a bugfix?

romankulikov commented 5 years ago

@romankulikov You mean Parallels Tools from 14.1.0 might contain a bugfix?

@mpdude, yes. But I've checked things out and its turns that 14.1.0 still contains the issue. We're investigating it.

legal90 commented 1 year ago

Hi all, I'm gonna close this issue since there were no updates for 4+ years. Feel free to create a new one if you will face that problem again.