我有一部通过 MTP 连接到电脑的 Android 手机。这很好用;我可以用 Nautilus 查看和传输文件。但是,我经常想使用终端移动大量文件,但似乎在文件系统树中的任何地方都找不到该设备。Nautilus 将位置报告为mtp://[usb:003,007]/
,但它不在/media
或下/mnt
。
有人知道它在哪里吗?
答案1
正如你已经发现,挂载点位于/run/user/$USER/gvfs/
(或/var/run/user/$UID/gvfs
)中,并以它们使用的协议、连接类型和地址命名。这让事情变得更加困难,因为每次重新插入设备时,连接地址都可能会发生变化,即使是同一个端口。如果你有两次相同的设备,情况会变得更糟。
您可以使用lsusb
终端显示所有连接的 USB 设备:
$ lsusb | grep Google # Note: This is a Nexus 4, change accordingly
Bus 002 Device 025: ID 18d1:4ee2 Google Inc.
正如您所注意到的,Nautilus 也通过工具提示提供了此信息。您会发现 eg 的编码形式mtp://[usb:002,025]
为/run/user/$USER/gvfs
(或/var/run/user/$UID/gvfs
)mtp:host=%5Busb%3A002%2C025%5D
提问者的编辑:这似乎需要 libmtp 和/或 gvfs 的较新版本,而不是 13.04 中默认提供的版本。sudo add-apt-repository ppa:langdalepl/gvfs-mtp
在执行任何其他操作之前,请先运行并更新。
编辑:saucy/13.10 及更新版本中不再需要 PPA,文件名在终端中列出,就像在 Nautilus 中一样。
编辑 2016-01-11:由于缺乏维护和改进的时间,我删除了之前包含在该答案中的脚本。您仍然可以在修订历史记录中找到它。
答案2
我的 Nexus 设备的内存可以通过以下方式访问:
/run/user/$UID/gvfs/mtp*
因此,如果你的 $UID 是1000
,你可以通过以下方式找到它
$ cd /run/user/$UID/gvfs/mtp*
或者(假设您的 UID 为 1000,以准确位置为例),
$ cd /run/user/1000/gvfs/mtp\:host=%5Busb%3A001%2C006%5D/
答案3
MTP
安装的设备通常可以在以下位置找到: /run/user/1000/gvfs/
例如,如果您的 Nautilus 地址栏显示mtp://[usb:001,006]/
,那么您可以通过以下方式访问:
/run/user/1000/gvfs/mtp\:host=%5Busb%3A001%2C006%5D/
现在您可以在终端上复制文件或文件夹:
- cd 进入文件夹 ->
cd /run/user/1000/gvfs/mtp\:host=%5Busb%3A001%2C006%5D/
- 然后将所需文件夹复制到当前目录 ->
cp -r ~/videos/ .
答案4
这是与以下对象一起工作的:
- Linux Mint 17.3
- 三星 Galaxy S5
尝试这个:
apt-get install mtpfs
apt-get install mtp-tools
#
是的,可以是一行(这是选修的)
sudo mkdir -p /media/mtp/phone
sudo chmod 775 /media/mtp/phone
#
我个人会限制权限禁止执行#
目前我不确定是什么足够的安装。
- 拔下手机微型 USB 并插入,然后...
sudo mtpfs -o allow_other /media/mtp/phone
ls -lt /media/mtp/phone
输出:
total 0
drwxrwxrwx 2 will will 0 Jan 1 1970 Card
drwxrwxrwx 2 will will 0 Jan 1 1970 Phone
drwxrwxrwx 2 will will 0 Jan 1 1970 Playlists
ls -lt /media/mtp/phone/Card
输出:
total 0
drwxrwxrwx 2 will will 0 Jan 1 1970 Android
drwxrwxrwx 2 will will 0 Jan 1 1970 DCIM
drwxrwxrwx 2 will will 0 Jan 1 1970 LOST.DIR
drwxrwxrwx 2 will will 0 Jan 1 1970 Music
列出我的 Android 手机上对 SD 卡的访问权限。”播放列表“是一个名为“/Playlists”的虚拟目录,其中包含您的播放列表作为 .m3u 文件。(每man mtpfs
)
这似乎很管用。要记住的有用命令...
sudo mtpfs -h
... 列出设备的选项。这似乎只在您安装设备之前有效。所以也许先检查一下。mtp-detect
... 显示了很多东西关于该设备(mtp-tools 的一部分)。
另外,我认为你需要手机/设备“在“,如果有屏幕保护程序,请打开它,以便设备可以连接。
我注意到我的 USB 安装为:
- /媒体/将/USB驱动器
因此,使用您的用户名而不是“mtp”存根进行挂载可能更有意义。另外,请查看帖子:“在 Ubuntu 上安装 MTP Android SD 卡”,其中有一些有用的建议和附加内容。
参考
我是从以下两篇帖子中得到启发的: