根据 Gnome / Nautilus,这些文件位于: mtp://[usb:001,007]
但:
$ cd mtp://[usb:001,007]
bash: cd: mtp://[usb:001,007]: No such file or directory
Run Code Online (Sandbox Code Playgroud)
并且df -h
不一一列举。
虽然lsusb
暗示它在那里:
Bus 001 Device 008: ID 04e8:6860 Samsung Electronics Co., Ltd Galaxy (MTP)
Arn*_*nab 14
您实际上可以使用cd
. 虽然mount
或df
命令无法列出它,但它在 gvfsd-fuse 安装文件夹下可用,在我的情况下是/run/user/1000/gvfs
,找出与
mount | grep 'gvfsd-fuse'
Run Code Online (Sandbox Code Playgroud)
挂载的 MTP 设备的文件系统在该文件夹下可用,名称有些蹩脚。
有些系统gvfsd-fuse
默认没有运行。确保你已经安装了它(在 Debian 和衍生产品上,它在gvfs-fuse
包中)。
简短回答:您不能cd
访问此目录。
媒体传输协议 (MTP) 使用特殊 API 来提供对设备上文件的有限访问。据我了解,它最初是由 Microsoft 设计的,用于与其数字限制系统兼容的专有软件。
该协议于 2008 年成为官方 USB 设备类,它提供了在计算机和外部设备之间传输媒体和元数据的标准方法。它与 DRM 无关,不断创新的 FOSS 社区开发了libmtp库来支持 MTP 设备。
该mtp://[usb:001,007]
网址是一个GNOME虚拟文件系统,它使用libmtp
作为其后端。由于 MTP 将文件系统抽象化,因此它的安装方式与常规存储设备不同,因此它不会被mount
ordf
命令列出。
的MTP维基百科文章具有协议和列表的优势,使用MTP用于在外部设备上访问文件的一个很好的描述。
Arch Linux Wiki 上的综合MTP 文章提供了大量关于在GNU/Linux 中使用 MTP 的有用信息(大多数信息不是特定于发行版的)。
如果你想治疗三星装置可以安装像任何其他存储设备(和使用一个普通的文件系统上的文件cd
),则需要对设备进行配置本身作为一个海量存储类(MSC) (又名UMS ) 设备。某些设备可以配置为使用任一方法。我有一部索尼 Android 手机,允许使用任何一种方法,但我总是使用 USB 大容量存储连接到它的 SD 卡(即使这意味着 Android 操作系统必须卸载 SD 卡,以允许 GNU/Linux 操作系统安装它) .