我可以通过 Ubuntu 16.04 上的 MTP 连接到我的 Android Alcatel Pixi 4 (5)(存在一个错误,如果删除文件后再复制文件,则协议会“意外死亡”,但除此之外,它可以正常工作)。
升级到 Ubuntu 18.04 后,每当我尝试浏览设备时,Dolphin 中都会出现“协议意外死亡”的提示。
#> mtp-detect
libmtp version: 1.1.13
Listing raw device(s)
Device 0 (VID=1bbb and PID=0167) is a Alcatel/TCT 6010D/TCL S950.
Found 1 device(s):
Alcatel/TCT: 6010D/TCL S950 (1bbb:0167) @ bus 3, dev 2
Attempting to connect device(s)
ignoring libusb_claim_interface() = -6PTP_ERROR_IO: failed to open session, trying again after resetting USB interface
LIBMTP libusb: Attempt to reset device
ignoring libusb_claim_interface() = -6LIBMTP PANIC: failed to open session on second attempt
Unable to open raw device 0
OK.
dmesg 包含:
[ 471.588800] usb 3-4: usbfs: process 9290 (gmtp) did not claim interface 0 before use
[ 471.715547] usb 3-4: reset high-speed USB device number 3 using xhci_hcd
[ 471.864513] usb 3-4: usbfs: process 9290 (gmtp) did not claim interface 0 before use
[ 471.864735] usb 3-4: usbfs: process 2562 (events) did not claim interface 0 before use
我尝试从源代码构建 libmtp-1.1.15,问题仍然存在。该设备通过同一台机器上的 Windows 上的 MTP 访问工作。
答案1
我的 openSUSE 也遇到过类似的问题。安装后jmtpfs
,kio-mtp
mtp-tools
问题消失,一切开始正常工作。
如果您已经使用过jmtpfs
或类似工具并将其挂载点设为~/android_mount/
,则首先确保它尚未挂载:
# unmount previously mounted device
fusermount -u ~/android_mount/
# this should show empty directory
ls -la ~/android_mount/
您还可以使用的输出df
来查看它是否安装在其他地方。
否则,创建一个新的挂载点,比如说,~/android_mount/
在您通过 USB 数据线连接 Android 手机并将其切换到“文件传输”模式(通常默认为“充电”)后,挂载您的 Android 手机:
# make directory to mount
mkdir -p ~/android_mount/
# mount the device (can take several minutes)
# it will also show device information while mounting
jmtpfs ~/android_mount/
# now you should see internal storage if you don't have an SD card
ls -la ~/android_mount/
drwxrwxr-x 12 login login 0 Jan 3 44248648 Internal storage
# if it has an SD card too, then it'll show 2 entries
# look inside
ls -la ~/android_mount/Internal\ storage/
现在,您可以像在任何 USB 连接设备上一样操作文件。
# when finished, unmount the device
fusermount -u ~/android_mount/
您能补充jmtpfs -l
一下您的问题吗?
答案2
如果 MTP 不起作用,您可以尝试 KDE Connect。
请参阅以下参考资料:
答案3
创建要挂载的目录
mkdir -p ~/android_mount/
安装设备(可能需要几分钟)安装时还会显示设备信息
jmtpfs ~/android_mount/
如果你没有 SD 卡,现在你应该可以看到内部存储
ls -la ~/android_mount/
drwxrwxr-x 12 login login 0 Jan 3 44248648 Internal storage
如果它也有 SD 卡,那么它会显示 2 个条目
看看里面
ls -la ~/android_mount/Internal\ storage/
我的手机现在开始工作了......
答案4
我有 2 部 Galaxy 手机(一部 Note4 和一部 S8),奇怪的是,这个问题只出现在我的 S8 上。我设法通过安装 go-mtpfs gvfs-fuse 解决了这个问题,主要是limesuite-udev