我有魅族 Ubuntu 手机并使用 Ubuntu 14.04 64 位。dmesg|grep -i usb
通过 USB 连接时可以检测到手机,但即使在开发者模式下,我也无法浏览文件或将照片传输到我的电脑。
也许我说的不够清楚。我可以将魅族 Ubuntu 手机连接到安装了 Android File Transfer 的 MacBook Pro,开箱即用。我可以在文件管理器中看到我的文件夹并传输照片。我正在寻找在 Ubuntu 14.04 中执行相同操作的方法。
答案1
我跟着Ubuntu 论坛上的这篇文章。这解决了问题,我可以在文件管理器中看到我的设备(魅族 MX4 Ubuntu 版)并可以毫无问题地传输文件。
安装一些常用的 MTP 应用程序。打开终端并依次输入以下两行。
sudo apt-get install libmtp-common mtp-tools libmtp-dev libmtp-runtime libmtp9 sudo apt-get dist-upgrade
修改 fuse.conf 文件。FUSE 是一个应用程序,旨在为非特权用户提供一种安全的方法来创建和安装他们自己的文件系统实现。此选项将覆盖限制安装文件系统的用户访问文件的安全措施。因此所有用户(包括 root)都可以访问这些文件。默认情况下,此选项仅允许 root 使用,但可以通过更改上述 fuse.conf 文件来删除此限制,如下所示:
sudo nano /etc/fuse.conf
我们要从下面的 user_allow_other 代码行中删除 #,如下所示:
#/etc/fuse.conf - Configuration file for Filesystem in Userspace (FUSE) #Set the maximum number of FUSE mounts allowed to non-root users. #The default is 1000. #mount_max = 1000 # Allow non-root users to specify the allow_other or allow_root mount options. user_allow_other
Ctrl现在按+保存文件X,输入Y,然后按Enter。
为我们计划连接的设备设置一些规则,但在此之前,我们需要找出供应商和产品 ID。
通过可用的 USB 端口连接您的设备并从终端运行:
lsusb
这应该会产生类似以下内容的输出:
Bus 002 Device 003: ID 0fce:01b1 Sony Ericsson Mobile Communications AB Bus 002 Device 002: ID 8087:0024 Intel Corp. Integrated Rate Matching Hub Bus 002 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub Bus 004 Device 001: ID 1d6b:0003 Linux Foundation 3.0 root hub Bus 003 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub Bus 001 Device 006: ID 0461:4d65 Primax Electronics, Ltd Bus 001 Device 005: ID 0846:9020 NetGear, Inc. WNA3100(v1) Wireless-N 300 [Broadcom BCM43231]
您需要查找您的设备,在本例中,我的索尼平板电脑位于列表顶部,供应商 ID 为 0fce,产品 ID 为 01b1。
修改mtp udev规则如下并输入:
sudo nano /lib/udev/rules.d/69-mtp.rules
然后添加下面这行代码:
# Sony Xperia Z2 Tablet ATTR{idVendor}=="0fce", ATTR{idProduct}=="01b1", SYMLINK+="libmtp-%k", ENV{ID_MTP_DEVICE}="1", ENV{ID_MEDIA_PLAYER}="1"
请记住,您在此处更改的是旁边的设备名称
#
,这可以是任何您想要的名称,#
注释掉代码,但为了清楚和以后参考,我将选择您的平板电脑/手机的名称以及供应商 ID 和产品 ID,它们应该与您之前发出命令时看到的相匹配lsusb
。完成后,保存文件。
在51android规则文件中添加一行代码:
sudo nano /etc/udev/rules.d/51-android.rules
然后添加以下代码行:
ATTR{idVendor}=="