条条大路通侏儒

条条大路通侏儒

我将运动相机(GoPro Hero 5)连接到运行 Ubuntu 16.10 LTS 的电脑上下载文件。令我惊讶的是,我没有看到相机的文件夹/media/find | grep DCIM从根文件夹运行发现一个具有以下路径的文件夹,其中包含我正在寻找的视频文件:

/run/user/1000/gvfs/gphoto2:host=%5Busb%3A003%2C094%5D/DCIM/

那么,它是什么/run/user/1000/gvfs/以及它的目的与有何不同/media/

答案1

条条大路通侏儒

Ubuntu 基于许多东西,再加上 Canonical(Ubuntu 的所有者)的自主开发程序。大多数人都知道它基于 Linux 内核,并提供“GNOME”桌面环境。但它也基于 Debian,也许还有同样重要的 Gnome Internals。它是如此内在,我敢说 Ubuntu 就是如此:“条条大路通向 Gnome”。

什么是 GIO/gvfs?

在您的问题中,/run/user/1000/gvfs/gvfs组件代表“Gnome 虚拟文件系统”。您的相机和 Android 手机安装在此“用户空间”中,而不是在“内核空间”中,而正常“安装”发生在该“用户空间”中。

要了解有关 GIO(我猜测是 Gnome 输入输出)的更多信息,请参阅这里这里Ubuntu 有一个关于使用 GIO 挂载设备的页面,使用gvfs-mount 命令

问题中的另一个组件/run/user/1000/gvfs//run/user组件。它是为了systemd绕过/tmp目录而创建的,目录是此类设备的常见做法,因为它绕过了网络“规则”。请参阅这里

你的问题的另一部分是它与之有何不同/media

目录/media是可移动存储所在的位置。可移动存储采用我们熟悉的文件格式,例如ext4fatntfs。设备名称和挂载名称是静态的。

您的 Android 手机不仅仅是可移动存储,还是一个具有存储空间的可移动外部操作系统。通常使用 MTP 访问存储。但是,有许多程序可以与手机通信。这就是它进入的原因/run/user/1000/gvfs。Samba 也进入相同的目录链,但我还没有研究过那个。

/run/user/1000目录结构中,挂载名称是动态的,并且会随着每次连接而变化。例如,我的手机当前是:

$ 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/

USB 枚举因变化而臭名昭著,因此您可以放心,目录名称下次会有所不同。/media另一方面,“东西”是静态的。

注意内核为 4.14.34 的 Ubuntu 16.04 显示的日期。自 1969 年以来,我就没再用过这款 Android 智能手机。我想我们可以称之为一个 bug。

相关内容