Why do my gvfs mounts not show up under ~/.gvfs or /run/user/<login>/gvfs?
From what I read, when mounting a network share via nautilus or gvfs-mount
the mount point should be in ~/.gvfs
. This seems not to be the case for me: I tried mounting both an FTP and SMB share via both nautilus and gvfs-mount
under both Ubuntu Maverick and Natty and in none of the cases did I see any mount point under ~/.gvfs
. I can access the shares just find in nautilus, but I want to have access via the command line, which is why I need a mount point in the file system.
Edit: Debugging following James Henstridge's answer and enzotib's comment revealed that on my laptop gvfs-fuse-daemon
is running and consequently gvfs mounts show up in ~/.gvfs
, whereas on the 2 workstations where ~/.gvfs
remained empty gvfs-fuse-daemon
was not running. On all 3 machines there are other gvfs processes running: gvfsd
, gvfs-afc-volume-monitor
, ...
On the laptop, mount | fgrep gvfs
yields
gvfs-fuse-daemon on /home/xxx/.gvfs type fuse.gvfs-fuse-daemon (rw,nosuid,nodev,user=xxx)
That raises the questions:
- How are shares mounted without
gvfs-fuse-daemon
running? Is there no mount point created in that case and is every access to the share a gvfs library call? Which daemon is responsible?gvfsd
? - What's the role of
gvfs-fuse-daemon
? Does it only create a fuse mount point in~/.gvfs
?
Update: On 12.10 and later, mounts are under /run/user/<login>/gvfs
.
Solved the problem (kind of).
On Ubuntu 12.10 the mountpoint appears in /run/user/(your username)/gvfs/sftp\:host\=\192.168.xxx.xxx
.
Hope that helps
The ~/.gvfs
directory should be a FUSE mount handled by the gvfs-fuse-daemon
process. If the directory appears to be empty, it would indicate that gvfs-fuse-daemon
did not start correctly.
You could try starting it manually with the following command:
/usr/lib/gvfs/gvfs-fuse-daemon ~/.gvfs
If that fails, you could try checking whether anything else is mounted there, or even delete and recreate the ~/.gvfs directory first. If things still fail, could you update your question and provide any error messages printed by gvfs-fuse-daemon
?
** On 14.04 the daemon is called gvfsd-fuse
and can be found in /usr/lib/gvfs/gvfsd-fuse
.