Linux mtp路径,无法在通过GVFS挂载的MTP设备上执行文件操作:“不支持该操作”...

一个猜测:您现在实际上正在使用MTP来访问Walkman,而MTP很烂。

细节

该Operation not supported错误可能表明您的Walkman使用的MTP实现不支持“直接”访问。根据http://intr.overt.org/blog/?p=174,这种直接访问是特定于Android的扩展,因此您的Walkman可能不支持该扩展。

结果,您只能使用几种选定的方式来使用MTP访问Walkman上的文件:我猜这些操作都支持在单个操作中读取或写入文件的所有内容,而这些MTP实现不支持访问文件的选定部分。 。而且看来,cpPython始终使用后一种访问方法,因此失败。

可能的解决方法

但是,您可能能够只需更换cp的gvfs-copy。在我使用三星Android手机(也具有严重的MTP实现)的测试中gvfs-copy,能够将文件复制到cp失败的手机中。

背景

我找不到有关这些与设备有关的MTP限制的太多信息;以下是一些片段,其中对情况做了一些解释:

为什么以前能奏效?

关于为什么可以cp在Mint 14中访问Walkman 而不在Mint 17 中访问Walkman的原因,这可能是由于从PTP到MTP作为访问系统的内部切换所致。从Ubuntu 12.04切换到14.04时,至少我注意到了三星设备。该手机同时支持PTP和MTP,但是Ubuntu 12.04显然仅支持PTP。这就是所使用的。由于新的Ubuntu版本具有对MTP的内置支持,因此现在可以使用它。

实际上,甚至可能以前以USB大容量存储设备访问了Walkman ,也就是USB硬盘和闪存驱动器使用的设备。也许出于某种原因,Linux(或您的Walkman)决定MTP比Mass Storage访问更可取。

您可以通过查看Walkman的URL来查看所使用的访问方法(在Nautilus中,转到Walkman文件夹,按Ctrl + L并查看地址栏):对于MTP,可以在例如下找到设备。mtp://[usb:001,004]/而对于PTP,它就像gphoto2://[usb:001,004]/store_00010001。对于大容量存储访问,URL只是一个普通路径,例如/media/WALKMAN。

我不知道MTP是否比PTP或大容量存储有任何实际优势,或者是否可以切换回PTP或大容量存储。在Linux下,MTP和PTP实现都有自己的错误集,因此可能取决于您的用例哪个更好。AFAIK大容量存储是用户最理想的选择,但手机中的设备支持正在逐渐减少。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值