当前位置: 首页>>技术问答>>正文


位于文件系统中的MTP安装设备在哪里?

, ,

问题描述

我有一部通过MTP与我的电脑连接的Android手机。这工作正常;我可以看到Nautilus并传输文件。但是,我经常想使用终端来移动大量文件,而且我似乎无法在文件系统树中的任何位置找到设备。 Nautilus报告位置为mtp://[usb:003,007]/,但不在/media/mnt下。

有谁知道它在哪里?

最佳解决办法

Asker的编辑:这似乎需要比13.04版默认可用的更新版本的libmtp和/或gvfs。在做其他事情之前运行sudo add-apt-repository ppa:langdalepl/gvfs-mtp并更新。


编辑:PPA不再需要/13.10和更新,文件名在终端列出,因为它们在 nautilus 。

编辑2016-01-11:由于缺乏维护和改进时间,我删除了以前包含在此答案中的脚本。您仍然可以在修订历史中找到它。


由于您已经拥有found out,所以安装点位于/run/user/$USER/gvfs/中,并且按照它们使用的协议,连接类型和地址命名。这会让事情变得更加困难,因为每次重新插入设备时连接地址都可能会发生变化,即使它是相同的端口。如果你有两次相同的设备,情况会变得更糟。

您可以使用lsusb从终端显示所有连接的USB设备:

$ lsusb | grep Google                       # Note: This is a Nexus 4
Bus 002 Device 025: ID 18d1:4ee2 Google Inc.

正如你已经注意到的, nautilus 还通过工具提示给出了这些信息。你会发现编码形式的例如/run/user/$USER/gvfs(或/var/run/user/$UID/gvfs)中的mtp://[usb:002,025]mtp:host=%5Busb%3A002%2C025%5D

次佳解决办法

我的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/

第三种解决办法

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

第四种办法

键入mount。这将列出每个活动的文件系统。

第五种办法

这是与:

  • Linux Mint 17.3

  • 三星Galaxy S5

尝试这个:

  1. apt-get install mtpfs

  2. apt-get install mtp-tools

    • #是可以是一行(这是可选的)

  3. sudo mkdir -p /media/mtp/phone

  4. sudo chmod 775 /media/mtp/phone

    • #个人而言,我会将权限限制为NO-eXecute

    • #在这一点上我不确定什么是足够安装。

  5. 拔下手机micro-USB和plug-in,然后……

  6. sudo mtpfs -o allow_other /media/mtp/phone

  7. 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
  1. 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-card的访问权限。 “Playlists”是一个名为”/Playlists”的虚拟目录,它包含您的播放列表为.m3u文件。 (根据man mtpfs)

这似乎是诀窍。有用的命令记住…

  • sudo mtpfs -h …列出设备的选项。这似乎只在您安装设备之前工作。所以检查first-off,也许。

  • mtp-detect …显示了很多关于该设备的内容(mtp-tools的一部分)。

另外,我认为您需要电话/设备”on”,如果您有一台设备可以连接,请打开screen-saver。

我注意到我的USB-s安装为:

  • /媒体/会/U盘U盘

因此,在您的用户名下而不是”mtp”存根上安装可能更有意义。还请查看帖子:“Mounting Your MTP Androids SD-card on Ubuntu”,它有一些有用的建议和附加内容。

引用:

我从这两个帖子中取得了领先地位:

第六种办法

我买了一部LG2手机,并运行Xubuntu 15.10。

这就是我如何将设备挂载到我的用户下的mnt目录。

  1. 首先确保您的系统中安装了以下软件包。

    sudo apt-get install jmtpfs mtp-tools
    
  2. 将手机连接为MTP设备,然后在终端中键入以下命令。

    mtp-detect
    
  3. 在文件/etc/fuse.conf中取消注释user_allow_other

  4. 在您的主目录中创建一个目录mnt

    mkdir mnt
    
  5. 安装设备。

    jmtpfs ~/mnt
    
  6. 而已。现在,您的设备安装在步骤4中创建的mnt目录下。

注意:可能有一些不必要的步骤。但遵循上述步骤为我工作。

参考:https://wiki.archlinux.org/index.php/MTP

第七种办法

这不是对问题的直接回答,而是一个解决方案。

在遇到USB连接不一致之后,我一起绕过了.gvfs和USB系统。

我在android和voila上安装了一个简单的ftp服务器!从Nautilus /nemo /thunar连接到服务器(无论是登录还是不登录,取决于你的选择)并离开你。

通过OwnCloud和/或BitTorrentSync处理文件夹的同步。

而通过无线的FTP比USB连接快得多。

第八种办法

MTP是一种协议,很像FTP或SSH。它在用户请求时提取文件。因此计算机上没有安装的文件系统。

使用mtpfs为了使它看起来像一个安装的文件系统。

mtpfs <a_folder_to_mount>

无需指定设备。如果你只有一个设备连接,那么就没有歧义。我没有通过连接到电脑的多台设备对其进行测试。

参考资料

本文由Ubuntu问答整理, 博文地址: https://ubuntuqa.com/article/321.html,未经允许,请勿转载。