如何通过USB在Android和Linux之间传输文件?


26

我想将一些电影文件从Linux复制到我的HTC One SV Android手机(未植根)。

在Windows中,插入手机后,手机会自动挂载其内部和SD卡卷,从而可以传输文件。

在Linux Mint 13 Mate中,当我使用USB电缆插入手机时,总是会出现错误,然后可能要花几分钟的时间安装,有时会失败。我认为错误是-

初始化相机时出错:-60:无法锁定设备

我该如何进行这项工作?


我会说问题出在硬件上,而不是软件上,尤其是Linux或您的发行版上。
Bananguin

我以前基于Android 2.3的手机被视为USB存储设备。您正在使用哪个版本的Android?
Renan 2013年

要查看手机中发生的情况,可以尝试使用ADB。ADB是Android的SDK工具。您可以在手机中看到所有内容。并查看LogError。
2013年

我正在使用android 4.1
lamwaiman1988

启用USB调试将防止设备在连接时锁定。我发现,只要设备自动锁定,MTP总是会失败。
cheezsteak 2014年

Answers:


17

更新:现在 有几种更好的替代Airdroid的方法。但是,似乎大多数Linux发行版现在都可以很好地与MTP配合使用。根据我的经验,Mint(基于Ubuntu的软件)和Manjaro(基于Arch的软件)都是开箱即用的。如果无法立即使用或无法正常运行,请确保在软件包管理器中搜索MTP解决方案。


较新版本的Android将存储安装为MTP设备,而不是大容量存储。这样做的好处是可以同时在Android设备和PC上进行访问。不幸的是,尽管Windows本身就支持它,但到目前为止,Linux解决方案还存在很多问题。

当前,我发现的最可靠的(并且仍然有点不方便,但一旦连接就可以了)是go-mtpfs。是一个帮助您进行设置的链接。您必须从命令行安装/卸载。但是,如果您使用的是Ubuntu统一版本,则该线程中还有一个统一启动程序。

但是,除非您要传输大量数据,否则最好的选择是使用AirDroid之类的东西。它是Play商店中用于本地网络传输的免费应用程序,并提供可与计算机浏览器一起使用的网络界面。它甚至提供了一个拖放文件界面,甚至允许访问短信,通话记录,应用安装以及许多其他内容。


我安装了最新版本的Linux Mint 15 Olivia,因为该团队说他们在Android连接方面做出了努力。我尝试了USB连接,它工作正常。比Linux Mint 13好得多。因此,我认为这只是Linux带有MTP传输的问题,各发行版之间的性能有所不同。
lamwaiman1988

1
为了提高速度,您还可以adb pull按照这篇文章中的概述使用:vxlabs.com/2014/11/06/…–
Stefan van der Walt

28
@ lamwaiman1988 我不会信任飞机。 Airdroid应用程序权限:1.设备和应用程序历史记录2.身份3.联系人/日历4.位置5. SMS 6.电话7.照片/媒体/文件8.摄像头/麦克风9. Wifi连接信息10.设备ID和通话信息 ....看到这个庞大的清单,我想了解有关该公司的更多信息。“ Sand Studio”是在中国运营的“ Tongbu Networks”的一部分。厦门通步网络-详细信息:“厦门通步网络有限公司;福建省厦门市软件园二期望海路2号3楼C室,中国福建省厦门市361000,电话:+86.05922179187”。
a20

关于上述内容,PcWorld的评论具有讽刺意味:“此应用程序使您可以通过计算机的Web浏览器完全控制Android设备。”
2014年

2
AirDroid现在正在为本地文件传输“功能”收费。
sybind'5

9

您可以尝试在Android手机上使用免费的(免费)ES File Explorer文件管理器。

在许多功能中,它具有FTP服务器。因此,如果您可以将手机和计算机联网,则可以轻松地从计算机双向传输文件。我一直在Ubuntu和Fedora机器上(通过Thunar)进行操作。

此应用程序中的FTP服务器模式称为“远程管理器”,位于“工具”部分下。

大多数现代文件管理器将接受以下语法:

ftp://phone_ip_address:port

1
现在在“网络”部分下。

3

基本上,这应该和使用记忆棒一样容易。不幸的是,这种情况并非如此。但是,像其他集成一样,Linux将迎头赶上。

同时,您可以在Linux上使用WiFi和sshd,在智能手机方面使用sftp-client。

或使用Linux adb CLI使用USB传输。


2

mtpfs-媒体传输协议设备的FUSE文件系统

apt-get install mtpfs

做完了 与Linux Mint / Ubuntu / etc中的Windows一起使用。


2
sudo apt-get install jmtpfs在jessie上
Erik255 2014年

jmptpfs也很喘息。
sjas 2015年

2

我同意这并不像应该做的那么容易。例如,KDE具有MTP的实现,但是它只能读取图像,而不能写入图像(至少在我的版本中)。

我发现通过网络进行操作要容易得多。有多种方法可以做到这一点。Usuario提到了ES File Explorer。

我使用了这个免费开放源代码的Android FTP服务器,发现它很简单。您指定用户名和密码,然后运行FTP服务器(非常清楚服务器是否正在运行,并且易于启用/禁用)。

然后,您只需使用任何FTP客户端(有很多图形客户端,例如我使用Konqueror)。我能够轻松地将文件写回到手机上。

唯一的缺点是,它可能比使用高效USB协议要慢一些,并且FTP并不安全(所有内容均为明文形式)。可以使用Android SFTP服务器执行相同的操作;我只是个人还没有找到。


2

在寻找了解决该问题的方法之后,我找到了适用于Linux的Android File Transfer。这是适用于Linux的最佳MTP实现,它可以正常工作。

您可以看到在桌面上的主要Linux问题列表中已经说明了此问题

Linux没有可靠且可正常运行的快速本机(可通过内核直接安装; FUSE不会削减)MTP实现。为了与您的MTP设备配合使用,例如...基于Linux的Android手机,最好使用... Windows或MacOSX。更新:一位俄罗斯程序员对libMTP感到非常恼火,他编写了自己的完整的基于Qt的应用程序,该应用程序使用libusb直接安装到Linux内核。认识Android文件传输Linux。


1

假设您使用的是USB连接,我发现它可以工作,但是您需要按照特定的顺序进行操作:

  • 首先不要插入电话。
  • 在电话上,转到设置->无线和网络-> USB实用程序,然后单击“将存储连接到PC”。手机会说“连接USB电缆以使用大容量存储”。
  • 现在,将USB电缆插入手机。它应该显示“绿色android”图标和USB连接消息。

(我认为我的手机具有较旧的Android版本,希望这种情况在一般情况下都适用)。


Ash是正确的,感谢您的提示!,它工作正常。要传输mp3文件,您必须按(在移动设备上)显示“连接到USB”的位置;当您这样做时,将打开rythym框或其他程序。然后,您只需将文件从节奏框中拖到节奏框中显示DEVICE的位置即可。这些文件将位于您手机中名为“音乐”的文件夹中。您可以按设备图标在桌面上查看所有文件夹文件。
user66631 2014年

1
不幸的是,较新版本的Android不支持大容量存储模式。仅mtp(在某些情况下为ptp)。Linux对mtp的支持不是很好。
Edward Falk 2015年

@爱德华:是的,你是对的。我从Galaxy S2“升级”到S3后,大容量存储模式不再可用。正如Drake在接受的答案中所说的那样,我发现MTP比大容量存储更加脆弱,因此这有点不幸,但是一旦您使用它,就可以了。我正在使用gMTP作为GUI客户端,它可以正常工作,但是速度相当慢。
2015年

1

我能够使用rsync从HTC手机获取文件。这些命令是:

$ mkdir HTC_Dump
$ cd HTC_Dump
$ rsync -av /run/user/1000/gvfs/mtp\:host\=%5Busb%3A002%2C010%5D/ ./

导致:

已发送12,947,428,344字节已接收38,549字节9,738,598.64字节/秒总大小为12,944,119,635加速为1.00

我在/run目录中找到了电话文件的位置。

这是在Xubuntu 17.10(Artful Aardvark)上进行的,Android在运行Android 7.0版的HTC上进行。


无需rsync,复制命令就足够了cp -r /run/user/1000/gvfs/mtp\:host\=%5Busb%3A002%2C010%5D/ ~/Destination/Folder。我说这是在仅进行复制的情况下进行的,当然,如果要使用最新拍摄的照片更新PC,那么rsync是可行的方法。
Exadra37

1

我通过ES File Explorer创建的FTP网络进行此操作。

首先,在设置→共享和便携式热点→选中“便携式wifi热点”,将您的设备设置为便携式热点,然后将您的PC通过WiFi连接到该设备。

它使您的连接比通过中央WLAN网络的连接更快。然后,执行以下步骤:

  1. 打开ES File Explorer
  2. 转到网络→远程管理器
  3. 按下“打开”按钮
  4. 在Linux(我使用Ubuntu)中,打开其文件管理器
  5. 单击文件管理器左侧的“连接到服务器”
  6. 输入设备的地址已出现在ES File Explorer中

ftp://...:...)。

现在,您可以像对待PC中的驱动器一样对待设备。


1

sdcard通常是exfat文件系统,默认情况下默认情况下Ubuntu不会识别它-我不知道其他发行版是否存在这种情况。为了使我的Ubuntu 16.04 LTS能够写入exfat文件系统,我做了以下操作:

sudo apt-get install exfat-fuse exfat-utils

现在,我可以将我的Android手机插入USB的Ubuntu桌面上,然后将文件复制到sdcard(64GB)中。


0

尝试此命令,然后重新启动,它对我有用。

sudo apt-get install libmtp-common mtp-tools libmtp-dev libmtp-runtime libmtp9

那是解决方案的范围吗?
Jeff Schaller

这是对我有用的,实际上是运行命令,被提示重新启动,并且一旦我再次登录,我就可以使用dolphin文件管理器在Android设备上读取/写入文件。我无需执行其他任何操作或更改编辑文件。
Robby Lebotha '16

我在华硕ux303上使用KDE Plasma 5运行Xubuntu时
Robby Lebotha '16

您应该将该信息添加到您的答案文本中,如果没有答案,该信息将是不完整且令人困惑的
nealmcb

0

我发现只有在使用该设备或类似设备随附的电缆时,它才适用于USB。我已停产的三星平板电脑的USB电缆可与我的Android Onix替换板配合使用。适用于我的手机的唯一东西是它随附的电缆。其他USB充电/传输电缆不起作用或不完全起作用:例如,不会复制.mp3文件。不知道为什么会这样。但是非设备电缆通常不会显示为USB设备附件。

我不必修改软件或使用特殊软件。正常工作。


0

在Linux Mint 19.1中,可以通过激活“开发人员选项”并进入Android手机的“设置”“开发人员选项”“ USB配置”来轻松完成大量照片的传输,然后选择PTP(图片传输协议)而不是MTP。现在,仅使用文件资源管理器即可以闪电般的速度传输照片。


0

很多好的答案我只想简化一切:

sudo apt install mtp-tools

现在通过USB将您的Android手机插入,电缆很重要,因此如果其中一个无效,请尝试另一个。

mtp-detect

做完了 打开您的文件应用程序或终端并转移!


0

我只有一部Google Pixel 3手机,需要将图片/视频从其中移到我的Linux Mint 18.2中。这是我的操作方式:

  1. 在手机上,我安装了Cx File Explorer
  2. 我打开了该应用,然后点击“网络”标签
  3. 我点击了“从PC访问”按钮
  4. 我在复选框上保留了默认设置(“随机端口号”已选中,“显示隐藏文件”未选中),然后单击“启动服务”
  5. Cx File Explorer显示了一个FTP URL
  6. 在Linux笔记本电脑上,我打开了文件管理器,然后单击“文件->连接到服务器...”选项。
  7. 在“连接到服务器”对话框中,我在“服务器”文本框中输入步骤(5)的FTP URL,然后单击“连接”
  8. 我现在可以在笔记本电脑文件管理器中查看手机的文件
  9. 我要传输的照片和视频位于设备/ DCIM /相机下(而不是您想的那样,不在设备/电影或设备/图片文件夹中)。

0

我正在运行Mint 19.2。我的手机是运行Android 10的Pixel 1stGen。在Google搜索解决方案并尝试许多建议的MTP选项但没有成功后,我发现,如果您转到“设置”->“连接设备”->“ USB”并更改“使用USB FOR文件传输/ Android自动”,Nemo会挂载手机的存储空间并提供对设备文件的访问权限。我的手机设置为“无数据传输”。现在我首先检查了USB设置,MTP解决方案可能已经起作用。附带说明一下,StackExchange,HowToForge或OMG都没有建议的解决方案!提到先检查手机上的USB设置。我确实读过MTP在Mint上“开箱即用”的几篇文章。但同样,没有提及检查手机设置。希望这可以帮助。


许多评论建议安装mtp-tools。不说没必要。我相信第一步是在安装其他软件包之前,确保USB设置已设置为允许文件传输。就我而言,我安装了libmtp9(LTS 19.04需要)和mtp-tools。我只是收到Unable to open raw device 0错误消息。像其他任何驱动器一样,Pixel存储设备会弹出卸载的mtp工具,启用的USB设置和中提琴文件浏览器。
hackerkatt

0

您无需安装任何东西。

请按照以下步骤操作:

  1. 在Linux机器和智能手机之间连接USB电缆(?)。(USB电缆(?):为智能手机充电时始终使用。)

  2. 然后,手机会询问您是否允许访问设备数据。如果选择允许,则将建立MTP连接以进行访问。

  3. 您可以在Linux机器和adndroid之间传输文件。

就这样。

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.