All roads lead to Gnome
Ubuntu is based upon many things plus home-grown programming from Canonical (the owners of Ubuntu). Most people know it is based on Linux kernel and provides a "GNOME" Desktop environment. But it is also based on Debian and perhaps just as important Gnome Internals. It is so intrinsic I dare to say on Ubuntu that: "All roads lead to Gnome".
What is GIO / gvfs?
In your question, /run/user/1000/gvfs/
the gvfs
component stands for "Gnome Virtual File System". Your camera and Android phones are mounted in this "User Space" outside of "Kernel Space" where a normal "mount" occurs.
To learn more about GIO (Gnome Input Output I surmise) see here and here. Ubuntu has a page about using GIO to mount devices using the gvfs-mount command.
The other component in your question /run/user/1000/gvfs/
is the /run/user
component. This was created by systemd
to circumvent using the /tmp
directory which was common practice for such devices because it side-stepped network "rules". See here.
The other part of your question is how is it different from /media
?
The /media
directory is where removable storage is located. The removable storage is in a familiar file format such as ext4
, fat
or ntfs
. The device names and mount names are static.
Your Android phone is not just removable storage, but a removable foreign operating system that has storage. The storage is generally accessed with MTP. However, there is a host of programs to communicate with the phone. That is why it goes into /run/user/1000/gvfs
. Samba also goes into the same directory chain, but I haven't researched that one yet.
In the /run/user/1000
directory structure the mount names are dynamic and change with every connection. For example, my phone currently is:
$ ll /run/user/1000/gvfs/mtp:host=%5Busb%3A001%2C013%5D
total 0
dr-x------ 1 rick rick 0 Dec 31 1969 ./
dr-x------ 3 rick rick 0 May 9 18:20 ../
drwx------ 1 rick rick 0 Dec 31 1969 Internal storage/
drwx------ 1 rick rick 0 Dec 31 1969 SD card/
The USB enumeration is notorious for changing, so you can be assured the directory name will be different next time. /media
"stuff" on the other hand is static.
Notice the dates shown by Ubuntu 16.04 under Kernel 4.14.34. I haven't had this Android Smartphone since the year 1969. I guess we can call this a bug.
/media/
just like all other usb devices that I tried so far. – AlwaysLearning Oct 27 '16 at 12:51/run/user/1000/gvfs
is - a mountpoint for FUSE. If that's not what you're asking, you might want to edit the title of your question. But I wasn't saying it is a duplicate – Zanna Oct 27 '16 at 12:57grep
is murdered by the/run
directory (and a few others too) and one of the reasons it takes 53 hours to run: https://askubuntu.com/questions/1005437/greping-all-files-for-a-string-takes-a-long-time – WinEunuuchs2Unix May 12 '18 at 00:14